diff --git a/.agents/AGENTS.md b/.agents/AGENTS.md new file mode 100644 index 000000000..7073c9b93 --- /dev/null +++ b/.agents/AGENTS.md @@ -0,0 +1,82 @@ +# RocketPy Workspace Instructions + +## Code Style +- Use snake_case for variables, functions, methods, and modules. Use descriptive names. +- Use PascalCase for classes and UPPER_SNAKE_CASE for constants. +- Keep lines at 88 characters and follow PEP 8 unless existing code in the target file differs. +- Run Ruff as the source of truth for formatting/import organization: + - `make format` + - `make lint` +- Use NumPy-style docstrings for public classes, methods, and functions, including units. +- In case of tooling drift between docs and config, prefer current repository tooling in `Makefile` + and `pyproject.toml`. + +## Architecture +- RocketPy is a modular Python library; keep feature logic in the correct package boundary: + - `rocketpy/simulation`: flight simulation and Monte Carlo orchestration. + - `rocketpy/rocket`, `rocketpy/motors`, `rocketpy/environment`: domain models. + - `rocketpy/mathutils`: numerical primitives and interpolation utilities. + - `rocketpy/plots`, `rocketpy/prints`: output and visualization layers. +- Prefer extending existing classes/patterns over introducing new top-level abstractions. +- Preserve public API stability in `rocketpy/__init__.py` exports. + +## Build and Test +- Use Makefile targets for OS-agnostic workflows: + - `make install` + - `make pytest` + - `make pytest-slow` + - `make coverage` + - `make coverage-report` + - `make build-docs` +- Before finishing code changes, run focused tests first, then broader relevant suites. +- When running Python directly in this workspace, prefer the project virtual + environment interpreter: `.venv/bin/python` on Unix/macOS or + `.venv/Scripts/python.exe` on Windows. +- Slow tests are explicitly marked with `@pytest.mark.slow` and are run with `make pytest-slow`. +- For docs changes, check `make build-docs` output and resolve warnings/errors when practical. + +## Development Workflow +- Target pull requests to `develop` by default; `master` is the stable branch. +- Use branch names in `type/description` format, such as: + - `bug/` + - `doc/` + - `enh/` + - `mnt/` + - `tst/` +- Prefer rebasing feature branches on top of `develop` to keep history linear. +- Keep commit and PR titles explicit and prefixed with project acronyms when possible: + - `BUG`, `DOC`, `ENH`, `MNT`, `TST`, `BLD`, `REL`, `REV`, `STY`, `DEV`. + +## Conventions +- SI units are the default. Document units and coordinate-system references explicitly. +- Position/reference-frame arguments are critical in this codebase. Be explicit about orientation + (for example, `tail_to_nose`, `nozzle_to_combustion_chamber`). +- Include unit tests for new behavior. Follow AAA structure and clear test names. +- Use fixtures from `tests/fixtures`; if adding a new fixture module, update `tests/conftest.py`. +- Use `pytest.approx` for floating-point checks where appropriate. +- Use `@cached_property` for expensive computations when helpful, and be careful with stale-cache + behavior when underlying mutable state changes. +- Keep behavior backward compatible across the public API exported via `rocketpy/__init__.py`. +- Prefer extending existing module patterns over creating new top-level package structure. + +## Testing Taxonomy +- Unit tests are mandatory for new behavior. +- Unit tests in RocketPy can be sociable (real collaborators allowed) but should still be fast and + method-focused. +- Treat tests as integration tests when they are strongly I/O-oriented or broad across many methods, + including `all_info()` convention cases. +- Acceptance tests represent realistic user/flight scenarios and may compare simulation thresholds to + known flight data. + +## Documentation Links +- Contributor workflow and setup: `docs/development/setting_up.rst` +- Style and naming details: `docs/development/style_guide.rst` +- Testing philosophy and structure: `docs/development/testing.rst` +- API reference conventions: `docs/reference/index.rst` +- Domain/physics background: `docs/technical/index.rst` + +## Scoped Customizations +- Simulation-specific rules: `.agents/skills/simulation-safety/SKILL.md` +- Test-authoring rules: `.agents/skills/tests-python/SKILL.md` +- RST/Sphinx documentation rules: `.agents/skills/sphinx-docs/SKILL.md` +- Specialized review persona: `.agents/skills/rocketpy-reviewer/SKILL.md` diff --git a/.agents/skills/rocketpy-reviewer/SKILL.md b/.agents/skills/rocketpy-reviewer/SKILL.md new file mode 100644 index 000000000..30d3f7598 --- /dev/null +++ b/.agents/skills/rocketpy-reviewer/SKILL.md @@ -0,0 +1,62 @@ +--- +description: "Physics-safe RocketPy code review agent. Use for pull request review, unit consistency checks, coordinate-frame validation, cached-property risk detection, and regression-focused test-gap analysis." +name: "RocketPy Reviewer" +tools: [read, search] +argument-hint: "Review these changes for physics correctness and regression risk: " +user-invocable: true +--- +You are a RocketPy-focused reviewer for physics safety and regression risk. + +## Goals + +- Detect behavioral regressions and numerical/physics risks before merge. +- Validate unit consistency and coordinate/reference-frame correctness. +- Identify stale-cache risks when `@cached_property` interacts with mutable state. +- Check test coverage quality for changed behavior. +- Verify alignment with RocketPy workflow and contributor conventions. + +## Review Priorities + +1. Correctness and safety issues (highest severity). +2. Behavioral regressions and API compatibility. +3. Numerical stability and tolerance correctness. +4. Missing tests or weak assertions. +5. Documentation mismatches affecting users. +6. Workflow violations (test placement, branch/PR conventions, or missing validation evidence). + +## RocketPy-Specific Checks + +- SI units are explicit and consistent. +- Orientation conventions are unambiguous (`tail_to_nose`, `nozzle_to_combustion_chamber`, etc.). +- New/changed simulation logic does not silently invalidate cached values. +- Floating-point assertions use `pytest.approx` where needed. +- New fixtures are wired through `tests/conftest.py` when applicable. +- Test type is appropriate for scope (`unit`, `integration`, `acceptance`) and `all_info()`-style tests + are not misclassified. +- New behavior includes at least one regression-oriented test and relevant edge-case checks. +- For docs-affecting changes, references and paths remain valid and build warnings are addressed. +- Tooling recommendations match current repository setup (prefer Makefile plus `pyproject.toml` + settings when docs are outdated). + +## Validation Expectations + +- Prefer focused test runs first, then broader relevant suites. +- Recommend `make format` and `make lint` when style/lint risks are present. +- Recommend `make build-docs` when `.rst` files or API docs are changed. + +## Output Format + +Provide findings first, ordered by severity. +For each finding include: +- Severity: Critical, High, Medium, or Low +- Location: file path and line +- Why it matters: behavioral or physics risk +- Suggested fix: concrete, minimal change + +After findings, include: +- Open questions or assumptions +- Residual risks or testing gaps +- Brief change summary +- Suggested validation commands (only when useful) + +If no findings are identified, state that explicitly and still report residual risks/testing gaps. diff --git a/.agents/skills/simulation-safety/SKILL.md b/.agents/skills/simulation-safety/SKILL.md new file mode 100644 index 000000000..cc2af5d27 --- /dev/null +++ b/.agents/skills/simulation-safety/SKILL.md @@ -0,0 +1,41 @@ +--- +description: "Use when editing rocketpy/simulation code, including Flight state updates, Monte Carlo orchestration, post-processing, or cached computations. Covers simulation state safety, unit/reference-frame clarity, and regression checks." +name: "Simulation Safety" +applyTo: "rocketpy/simulation/**/*.py" +--- +# Simulation Safety Guidelines + +- Keep simulation logic inside `rocketpy/simulation` and avoid leaking domain behavior that belongs in + `rocketpy/rocket`, `rocketpy/motors`, or `rocketpy/environment`. +- Preserve public API behavior and exported names used by `rocketpy/__init__.py`. +- Prefer extending existing simulation components before creating new abstractions: + - `flight.py`: simulation state, integration flow, and post-processing. + - `monte_carlo.py`: orchestration and statistical execution workflows. + - `flight_data_exporter.py` and `flight_data_importer.py`: persistence and interchange. + - `flight_comparator.py`: comparative analysis outputs. +- Be explicit with physical units and reference frames in new parameters, attributes, and docstrings. +- For position/orientation-sensitive behavior, use explicit conventions (for example + `tail_to_nose`, `nozzle_to_combustion_chamber`) and avoid implicit assumptions. +- Treat state mutation carefully when cached values exist. +- If changes can invalidate `@cached_property` values, either avoid post-computation mutation or + explicitly invalidate affected caches in a controlled, documented way. +- Keep numerical behavior deterministic unless stochastic behavior is intentional and documented. +- For Monte Carlo and stochastic code paths, make randomness controllable and reproducible when tests + rely on it. +- Prefer vectorized NumPy operations for hot paths and avoid introducing Python loops in + performance-critical sections without justification. +- Guard against numerical edge cases (zero/near-zero denominators, interpolation limits, and boundary + conditions). +- Do not change default numerical tolerances or integration behavior without documenting motivation and + validating regression impact. +- Add focused regression tests for changed behavior, including edge cases and orientation-dependent + behavior. +- For floating-point expectations, use `pytest.approx` with meaningful tolerances. +- Run focused tests first, then broader relevant tests (`make pytest` and `make pytest-slow` when + applicable). + +See: +- `docs/development/testing.rst` +- `docs/development/style_guide.rst` +- `docs/development/setting_up.rst` +- `docs/technical/index.rst` diff --git a/.agents/skills/sphinx-docs/SKILL.md b/.agents/skills/sphinx-docs/SKILL.md new file mode 100644 index 000000000..8c24cac53 --- /dev/null +++ b/.agents/skills/sphinx-docs/SKILL.md @@ -0,0 +1,32 @@ +--- +description: "Use when writing or editing docs/**/*.rst. Covers Sphinx/reStructuredText conventions, cross-references, toctree hygiene, and RocketPy unit/reference-frame documentation requirements." +name: "Sphinx RST Conventions" +applyTo: "docs/**/*.rst" +--- +# Sphinx and RST Guidelines + +- Follow existing heading hierarchy and style in the target document. +- Prefer linking to existing documentation pages instead of duplicating content. +- Use Sphinx cross-references where appropriate (`:class:`, `:func:`, `:mod:`, `:doc:`, `:ref:`). +- Keep API names and module paths consistent with current code exports. +- Document physical units and coordinate/reference-frame conventions explicitly. +- Include concise, practical examples when introducing new user-facing behavior. +- Keep prose clear and technical; avoid marketing language in development/reference docs. +- When adding a new page, update the relevant `toctree` so it appears in navigation. +- Use RocketPy docs build workflow: + - `make build-docs` from repository root for normal validation. + - If stale artifacts appear, clean docs build outputs via `cd docs && make clean`, then rebuild. +- Treat new Sphinx warnings/errors as issues to fix or explicitly call out in review notes. +- Keep `docs/index.rst` section structure coherent with user, development, reference, technical, and + examples navigation. +- Do not edit Sphinx-generated scaffolding files unless explicitly requested: + - `docs/Makefile` + - `docs/make.bat` +- For API docs, ensure references remain aligned with exported/public objects and current module paths. + +See: +- `docs/index.rst` +- `docs/development/build_docs.rst` +- `docs/development/style_guide.rst` +- `docs/reference/index.rst` +- `docs/technical/index.rst` diff --git a/.agents/skills/tests-python/SKILL.md b/.agents/skills/tests-python/SKILL.md new file mode 100644 index 000000000..1e9626142 --- /dev/null +++ b/.agents/skills/tests-python/SKILL.md @@ -0,0 +1,36 @@ +--- +description: "Use when creating or editing pytest files in tests/. Enforces AAA structure, naming conventions, fixture usage, parameterization, slow-test marking, and numerical assertion practices for RocketPy." +name: "RocketPy Pytest Standards" +applyTo: "tests/**/*.py" +--- +# RocketPy Test Authoring Guidelines + +- Unit tests are mandatory for new behavior. +- Follow AAA structure in each test: Arrange, Act, Assert. +- Use descriptive test names matching project convention: + - `test_methodname` + - `test_methodname_stateundertest` + - `test_methodname_expectedbehaviour` +- Include docstrings that clearly state expected behavior and context. +- Prefer parameterization for scenario matrices instead of duplicated tests. +- Classify tests correctly: + - `tests/unit`: fast, method-focused tests (sociable unit tests are acceptable in RocketPy). + - `tests/integration`: broad multi-method/component interactions and strongly I/O-oriented cases. + - `tests/acceptance`: realistic end-user/flight scenarios with threshold-based expectations. +- By RocketPy convention, tests centered on `all_info()` behavior are integration tests. +- Reuse fixtures from `tests/fixtures` whenever possible. +- Keep fixture organization aligned with existing categories under `tests/fixtures` + (environment, flight, motor, rockets, surfaces, units, etc.). +- If you add a new fixture module, update `tests/conftest.py` so fixtures are discoverable. +- Keep tests deterministic: set seeds when randomness is involved and avoid unstable external + dependencies unless integration behavior explicitly requires them. +- Use `pytest.approx` for floating-point comparisons with realistic tolerances. +- Mark expensive tests with `@pytest.mark.slow` and ensure they can run under the project slow-test + workflow. +- Include at least one negative or edge-case assertion for new behaviors. +- When adding a bug fix, include a regression test that fails before the fix and passes after it. + +See: +- `docs/development/testing.rst` +- `docs/development/style_guide.rst` +- `docs/development/setting_up.rst` diff --git a/.claude/hooks/README.md b/.claude/hooks/README.md new file mode 100644 index 000000000..9ddfe1a89 --- /dev/null +++ b/.claude/hooks/README.md @@ -0,0 +1,40 @@ +# Claude Code hooks + +Project-level [Claude Code hooks](https://docs.claude.com/en/docs/claude-code/hooks) +that keep Claude's edits lint-clean and stop lint failures from reaching CI. They +are wired up in [`.claude/settings.json`](../settings.json) and run automatically +for anyone using Claude Code in this repo. + +Both hooks only run **ruff** (the fast linter/formatter, ~0.15s for the whole +repo). Pylint is intentionally left to CI: on this codebase its per-file startup +cost is seconds, too slow for an interactive guard. ruff is also what has actually +been breaking the `Linters` job. + +## Hooks + +| Hook | Event | What it does | +| --- | --- | --- | +| [`ruff_on_edit.py`](ruff_on_edit.py) | `PostToolUse` on `Edit`/`Write`/`MultiEdit` | After Claude edits a `.py` file, runs `ruff format` then `ruff check --fix` on that one file. Surfaces any unfixable lint issues back to Claude. | +| [`ruff_guard_push.py`](ruff_guard_push.py) | `PreToolUse` on `Bash` | Before a `git push`, runs `ruff check` + `ruff format --check` over the repo and **blocks the push** if either would fail (i.e. before it turns CI red). | + +## Design guarantees + +- **Cross-platform** (Windows / macOS / Linux): pure Python, no shell built-ins, + no OS-specific paths. ruff is invoked as ` -m ruff` so it + resolves to the same environment the hook runs in. +- **Never gets in the way**: if `ruff` is not installed, both hooks are a silent + no-op. The push guard only acts on actual `git push` commands. + +## Requirements + +A working `python` on `PATH` (an activated virtualenv is the normal setup) with +`ruff` installed: `pip install ruff` — already included in `pip install .[tests]`. + +## Testing a hook manually + +Pipe a sample event payload to a hook on stdin: + +```bash +printf '{"tool_input":{"file_path":"some_file.py"}}' | python .claude/hooks/ruff_on_edit.py +printf '{"tool_input":{"command":"git push"}}' | python .claude/hooks/ruff_guard_push.py +``` diff --git a/.claude/hooks/ruff_guard_push.py b/.claude/hooks/ruff_guard_push.py new file mode 100644 index 000000000..651e96a43 --- /dev/null +++ b/.claude/hooks/ruff_guard_push.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 +"""Claude Code ``PreToolUse`` hook: block ``git push`` if ruff would fail in CI. + +Runs before every ``Bash`` command. If the command is a ``git push``, it runs the +two fast ruff steps from the Linters CI job (``ruff check .`` and +``ruff format --check .``) over the repo. If either would fail, the push is +blocked (exit code 2) and the failure is reported back to Claude so it gets fixed +*before* it turns the CI red. + +Only ruff runs here (both steps together are ~0.15s). Pylint is intentionally left +to CI: on this repo pylint costs seconds-per-file of startup, which is too slow for +an interactive guard. ruff is what has actually been breaking the Linters job. + +Design notes +------------ +* ruff is invoked as `` -m ruff`` (see ``ruff_on_edit.py``). +* Cross-platform: pure Python, no shell built-ins, no OS-specific paths. +* Silent no-op when the command is not a push, or when ruff is not installed. +""" + +import importlib.util +import json +import os +import re +import subprocess +import sys + +# Match ``git push`` as a real command (start of line or after a shell +# separator), tolerating global flags like ``git -C . push``. Avoids most +# false positives from the substring "push" appearing elsewhere. +_GIT_PUSH = re.compile(r"(?:^|[\s;&|(`])git(?:\s+-\S+|\s+--\S+)*\s+push\b") + + +def main() -> int: + try: + payload = json.load(sys.stdin) + except (json.JSONDecodeError, ValueError): + return 0 + + command = (payload.get("tool_input") or {}).get("command", "") + if not isinstance(command, str) or not _GIT_PUSH.search(command): + return 0 + + if importlib.util.find_spec("ruff") is None: + return 0 # ruff not installed: don't block pushes. + + # Target the project root explicitly. ``CLAUDE_PROJECT_DIR`` is set by Claude + # Code to the native-format project root; passing it as a path argument (not + # as the subprocess ``cwd``) keeps this robust across platforms/shells. Falls + # back to ".", which resolves against the hook's working directory. + target = os.environ.get("CLAUDE_PROJECT_DIR") or "." + ruff = [sys.executable, "-m", "ruff"] + check = subprocess.run(ruff + ["check", target], capture_output=True, text=True) + fmt = subprocess.run( + ruff + ["format", "--check", target], capture_output=True, text=True + ) + if check.returncode == 0 and fmt.returncode == 0: + return 0 + + out = [ + "[ruff] Push blocked — this would fail the Linters CI job. " + "Fix the issues below, then push again.\n" + ] + if check.returncode != 0: + out.append("--- ruff check ---\n" + (check.stdout or "") + (check.stderr or "")) + if fmt.returncode != 0: + out.append( + "--- ruff format --check . ---\n" + + (fmt.stdout or "") + + (fmt.stderr or "") + + "\nFix formatting with: python -m ruff format .\n" + ) + sys.stderr.write("\n".join(out)) + return 2 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/.claude/hooks/ruff_on_edit.py b/.claude/hooks/ruff_on_edit.py new file mode 100644 index 000000000..fa9895119 --- /dev/null +++ b/.claude/hooks/ruff_on_edit.py @@ -0,0 +1,60 @@ +#!/usr/bin/env python3 +"""Claude Code ``PostToolUse`` hook: auto-format + lint-fix edited Python files. + +Runs after every ``Edit``/``Write``/``MultiEdit``. Reads the hook payload from +stdin, and if the touched file is a ``.py`` file, runs ``ruff format`` followed by +``ruff check --fix`` on *just that one file*. ruff is ~instant per file, so this +keeps Claude's edits continuously formatted and lint-clean without slowing the +session down. + +Design notes +------------ +* ruff is invoked as `` -m ruff`` so it always resolves to the + same environment the hook runs in (matches the ``python -m ruff`` convention + the repo already uses) instead of relying on a ``ruff`` binary being on PATH. +* Cross-platform: pure Python, no shell built-ins, no OS-specific paths. +* Degrades to a silent no-op when ruff is not installed, so it can never block + editing for a contributor who has not installed the linter yet. +* Exit code 2 feeds any *unfixable* lint issues back to Claude so it fixes them; + the common case (format + autofix succeed) exits 0 silently. +""" + +import importlib.util +import json +import subprocess +import sys + + +def main() -> int: + try: + payload = json.load(sys.stdin) + except (json.JSONDecodeError, ValueError): + return 0 + + tool_input = payload.get("tool_input") or {} + file_path = tool_input.get("file_path") + if not isinstance(file_path, str) or not file_path.endswith(".py"): + return 0 + + if importlib.util.find_spec("ruff") is None: + # ruff not installed in this environment: never block the workflow. + return 0 + + ruff = [sys.executable, "-m", "ruff"] + subprocess.run(ruff + ["format", file_path], capture_output=True, text=True) + fix = subprocess.run( + ruff + ["check", "--fix", file_path], capture_output=True, text=True + ) + + if fix.returncode != 0: + sys.stderr.write( + f"[ruff] Lint issues ruff could not auto-fix in {file_path}:\n" + f"{fix.stdout}{fix.stderr}" + ) + return 2 + + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/.claude/settings.json b/.claude/settings.json new file mode 100644 index 000000000..91e8faa2b --- /dev/null +++ b/.claude/settings.json @@ -0,0 +1,46 @@ +{ + "permissions": { + "allow": [ + "Bash(git fetch *)", + "Bash(git merge *)", + "Bash(git checkout *)", + "Bash(python -m ruff --version)", + "Bash(python -m pylint --version)", + "Bash(python -m ruff check rocketpy/plots/flight_plots.py tests/unit/test_plots.py)", + "Bash(python -m ruff format --check rocketpy/plots/flight_plots.py tests/unit/test_plots.py)", + "Bash(python -m ruff check .)", + "Bash(python -m ruff format --check .)", + "Bash(python -m pylint rocketpy/plots/flight_plots.py tests/unit/test_plots.py)", + "Bash(python -m ruff check rocketpy/plots/flight_plots.py)", + "Bash(python -m ruff format --check rocketpy/plots/flight_plots.py)", + "Bash(python -m pytest tests/unit/test_plots.py -k \"animate_trajectory or animate_rotate\" -p no:cacheprovider -q)", + "Bash(python -m pytest tests/unit/test_plots.py -p no:cacheprovider -q)" + ] + }, + "hooks": { + "PostToolUse": [ + { + "matcher": "Edit|Write|MultiEdit", + "hooks": [ + { + "type": "command", + "command": "python .claude/hooks/ruff_on_edit.py", + "statusMessage": "ruff: formatting edited file" + } + ] + } + ], + "PreToolUse": [ + { + "matcher": "Bash", + "hooks": [ + { + "type": "command", + "command": "python .claude/hooks/ruff_guard_push.py", + "statusMessage": "ruff: pre-push lint guard" + } + ] + } + ] + } +} diff --git a/.claude/skills/rocketpy-release/SKILL.md b/.claude/skills/rocketpy-release/SKILL.md new file mode 100644 index 000000000..ebf8acd57 --- /dev/null +++ b/.claude/skills/rocketpy-release/SKILL.md @@ -0,0 +1,142 @@ +--- +name: rocketpy-release +description: >- + Cut a new RocketPy release: prepare the version-bump branch, update the + changelog and all version references, and guide the PR-to-master + PyPI flow. + Use when the user wants to release a new version (e.g. "release v1.13", + "fazer um release", "bump version and cut a release", "REL PR"). +--- + +# RocketPy Release + +Prepare and guide a RocketPy version release following the team's established +`REL:` pattern. This skill prepares the branch and the version-bump commit; the +human opens the PR and publishes the GitHub Release themselves. + +## Branching model + +RocketPy uses **`develop`** (integration) and **`master`** (released). All +feature/fix work lands on `develop`. A release promotes `develop` → `master`. + +Since **v1.12.0** the team uses a **single streamlined PR** (see PR #935): +one `rel/vX.Y.Z` branch — created off `develop`, with the version already +bumped — opened **straight to `master`**. (Older releases used three PRs; do +NOT revive that.) + +PyPI is published automatically by `.github/workflows/publish-to-pypi.yml` when +a **GitHub Release is published** (`on: release: [published]`). Creating the +release/tag in the GitHub UI is the final manual trigger. + +## Before you start — gather state + +Run these and confirm with the user: + +```bash +git fetch origin +grep -m1 '^version' pyproject.toml # current version +git show origin/master:pyproject.toml | grep -m1 '^version' # released version +git rev-list --left-right --count origin/master...origin/develop # ahead/behind +git tag --sort=-creatordate | head -5 # last tags +``` + +Confirm the **target version** (semver: MAJOR.MINOR.PATCH) with the user before +touching files. Never guess the number. + +## Step 1 — Create the release branch + +Branch off the latest `develop`: + +```bash +git checkout develop && git pull origin develop +git checkout -b rel/vX.Y.Z +``` + +## Step 2 — The version-bump commit + +Update **every** version reference. These have been missed before (e.g. +`installation.rst` sat stale at 1.11.0 through 1.12.x) — check all of them: + +| File | What to change | +|------|----------------| +| `pyproject.toml` | `version = "X.Y.Z"` | +| `docs/conf.py` | `release = "X.Y.Z"` and `copyright = ", RocketPy Team"` | +| `docs/user/installation.rst` | `pip install rocketpy==X.Y.Z` | +| `CHANGELOG.md` | see below | + +Sanity-sweep for any other stragglers (ignore `.venv`): + +```bash +grep -rn "" --include=*.py --include=*.toml --include=*.rst . \ + | grep -v '.venv' +``` + +### CHANGELOG.md + +The changelog `[Unreleased]` section is auto-populated on every merge to +`develop` by `.github/workflows/changelog.yml`, so entries should already be +present. To release: + +1. Rename the current `## [Unreleased] - yyyy-mm-dd` header to + `## [vX.Y.Z] - YYYY-MM-DD` (today's date). +2. Insert a **fresh empty** `[Unreleased]` block above it, preserving the + template comment and empty subsections: + + ```markdown + ## [Unreleased] - yyyy-mm-dd + + + + ### Added + + ### Changed + + ### Fixed + ``` +3. Add a `Changed` entry to the released section for the bump itself: + `- REL: bumps up rocketpy version to X.Y.Z [#PR](https://github.com/RocketPy-Team/RocketPy/pull/PR)` + (fill the PR number after the PR is opened, or leave a placeholder to edit). +4. Prune obvious noise if the maintainer wants (tests, CI, merge commits are + not meant to be in the changelog per the file's own header comment). + +### Commit + +Match the historical message style (`REL: bump version to X.Y.Z`): + +```bash +git add pyproject.toml docs/conf.py docs/user/installation.rst CHANGELOG.md +git commit -m "REL: bumps up rocketpy version to X.Y.Z" +``` + +Keep it to **one** bump commit. Do not include unrelated changes. + +## Step 3 — Push and hand off the PR + +```bash +git push -u origin rel/vX.Y.Z +``` + +**Stop here and let the human open the PR** (team preference — they open it +themselves). Give them the ready-to-use details: + +- **Base:** `master` ← **Compare:** `rel/vX.Y.Z` +- **Title:** `REL: vX.Y.Z` (or `Rel/vX.Y.Z`) +- **Body:** summarize the highlights; note the single-PR-to-master approach. + +## Step 4 — After the PR merges (guide the human) + +1. **Sync `master` back into `develop`** so develop carries the new version and + the merge history. Historically a PR titled like + `MNT: update develop to release vX.Y.Z`, base `develop` ← compare `master`. +2. **Create the GitHub Release** in the UI: new tag `vX.Y.Z` targeting + `master`, title `vX.Y.Z`, paste the changelog section as notes, Publish. + → This triggers `publish-to-pypi.yml` and ships to PyPI. +3. Verify the PyPI publish workflow succeeded and the new version is live. + +## Guardrails + +- Only prepare the branch + bump commit. **Do not open the PR or publish the + release** unless the user explicitly asks — they do those steps themselves. +- Confirm the target version with the user before editing. +- Base the PR on **`master`**, not `develop`. +- One clean `REL:` commit; no unrelated edits. diff --git a/.github/agents/rocketpy-reviewer.agent.md b/.github/agents/rocketpy-reviewer.agent.md new file mode 100644 index 000000000..be1b64b13 --- /dev/null +++ b/.github/agents/rocketpy-reviewer.agent.md @@ -0,0 +1,62 @@ +--- +description: "Physics-safe RocketPy code review agent. Use for pull request review, unit consistency checks, coordinate-frame validation, cached-property risk detection, and regression-focused test-gap analysis." +name: "RocketPy Reviewer" +tools: [read, search, execute] +argument-hint: "Review these changes for physics correctness and regression risk: " +user-invocable: true +--- +You are a RocketPy-focused reviewer for physics safety and regression risk. + +## Goals + +- Detect behavioral regressions and numerical/physics risks before merge. +- Validate unit consistency and coordinate/reference-frame correctness. +- Identify stale-cache risks when `@cached_property` interacts with mutable state. +- Check test coverage quality for changed behavior. +- Verify alignment with RocketPy workflow and contributor conventions. + +## Review Priorities + +1. Correctness and safety issues (highest severity). +2. Behavioral regressions and API compatibility. +3. Numerical stability and tolerance correctness. +4. Missing tests or weak assertions. +5. Documentation mismatches affecting users. +6. Workflow violations (test placement, branch/PR conventions, or missing validation evidence). + +## RocketPy-Specific Checks + +- SI units are explicit and consistent. +- Orientation conventions are unambiguous (`tail_to_nose`, `nozzle_to_combustion_chamber`, etc.). +- New/changed simulation logic does not silently invalidate cached values. +- Floating-point assertions use `pytest.approx` where needed. +- New fixtures are wired through `tests/conftest.py` when applicable. +- Test type is appropriate for scope (`unit`, `integration`, `acceptance`) and `all_info()`-style tests + are not misclassified. +- New behavior includes at least one regression-oriented test and relevant edge-case checks. +- For docs-affecting changes, references and paths remain valid and build warnings are addressed. +- Tooling recommendations match current repository setup (prefer Makefile plus `pyproject.toml` + settings when docs are outdated). + +## Validation Expectations + +- Prefer focused test runs first, then broader relevant suites. +- Recommend `make format` and `make lint` when style/lint risks are present. +- Recommend `make build-docs` when `.rst` files or API docs are changed. + +## Output Format + +Provide findings first, ordered by severity. +For each finding include: +- Severity: Critical, High, Medium, or Low +- Location: file path and line +- Why it matters: behavioral or physics risk +- Suggested fix: concrete, minimal change + +After findings, include: +- Open questions or assumptions +- Residual risks or testing gaps +- Brief change summary +- Suggested validation commands (only when useful) + +If no findings are identified, state that explicitly and still report residual risks/testing gaps. diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index f5366cb3b..382aa15e0 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -1,221 +1,80 @@ -# GitHub Copilot Instructions for RocketPy - -This file provides instructions for GitHub Copilot when working on the RocketPy codebase. -These guidelines help ensure consistency with the project's coding standards and development practices. - -## Project Overview - -RocketPy is a Python library for 6-DOF rocket trajectory simulation. -It's designed for high-power rocketry applications with focus on accuracy, performance, and ease of use. - -## Coding Standards - -### Naming Conventions -- **Use `snake_case` for all new code** - variables, functions, methods, and modules -- **Use descriptive names** - prefer `angle_of_attack` over `a` or `alpha` -- **Class names use PascalCase** - e.g., `SolidMotor`, `Environment`, `Flight` -- **Constants use UPPER_SNAKE_CASE** - e.g., `DEFAULT_GRAVITY`, `EARTH_RADIUS` - -### Code Style -- Follow **PEP 8** guidelines -- Line length: **88 characters** (Black's default) -- Organize imports with **isort** -- Our official formatter is the **ruff frmat** - -### Documentation -- **All public classes, methods, and functions must have docstrings** -- Use **NumPy style docstrings** -- Include **Parameters**, **Returns**, and **Examples** sections -- Document **units** for physical quantities (e.g., "in meters", "in radians") - -### Testing -- Write **unit tests** for all new features using pytest -- Follow **AAA pattern** (Arrange, Act, Assert) -- Use descriptive test names following: `test_methodname_expectedbehaviour` -- Include test docstrings explaining expected behavior -- Use **parameterization** for testing multiple scenarios -- Create pytest fixtures to avoid code repetition - -## Domain-Specific Guidelines - -### Physical Units and Conventions -- **SI units by default** - meters, kilograms, seconds, radians -- **Document coordinate systems** clearly (e.g., "tail_to_nose", "nozzle_to_combustion_chamber") -- **Position parameters** are critical - always document reference points -- Use **descriptive variable names** for physical quantities - -### Rocket Components -- **Motors**: SolidMotor, HybridMotor and LiquidMotor classes are children classes of the Motor class -- **Aerodynamic Surfaces**: They have Drag curves and lift coefficients -- **Parachutes**: Trigger functions, deployment conditions -- **Environment**: Atmospheric models, weather data, wind profiles - -### Mathematical Operations -- Use **numpy arrays** for vectorized operations (this improves performance) -- Prefer **scipy functions** for numerical integration and optimization -- **Handle edge cases** in calculations (division by zero, sqrt of negative numbers) -- **Validate input ranges** for physical parameters -- Monte Carlo simulations: sample from `numpy.random` for random number generation and creates several iterations to assess uncertainty in simulations. - -## File Structure and Organization - -### Source Code Organization - -Reminds that `rocketpy` is a Python package served as a library, and its source code is organized into several modules to facilitate maintainability and clarity. The following structure is recommended: - -``` -rocketpy/ -├── core/ # Core simulation classes -├── motors/ # Motor implementations -├── environment/ # Atmospheric and environmental models -├── plots/ # Plotting and visualization -├── tools/ # Utility functions -└── mathutils/ # Mathematical utilities -``` - -Please refer to popular Python packages like `scipy`, `numpy`, and `matplotlib` for inspiration on module organization. - -### Test Organization -``` -tests/ -├── unit/ # Unit tests -├── integration/ # Integration tests -├── acceptance/ # Acceptance tests -└── fixtures/ # Test fixtures organized by component -``` - -### Documentation Structure -``` -docs/ -├── user/ # User guides and tutorials -├── development/ # Development documentation -├── reference/ # API reference -├── examples/ # Flight examples and notebooks -└── technical/ # Technical documentation -``` - -## Common Patterns and Practices - -### Error Handling -- Use **descriptive error messages** with context -- **Validate inputs** at class initialization and method entry -- Raise **appropriate exception types** (ValueError, TypeError, etc.) -- Include **suggestions for fixes** in error messages - -### Performance Considerations -- Use **vectorized operations** where possible -- **Cache expensive computations** when appropriate (we frequently use `cached_property`) -- Keep in mind that RocketPy must be fast! - -### Backward Compatibility -- **Avoid breaking changes** in public APIs -- Use **deprecation warnings** before removing features -- **Document code changes** in docstrings and CHANGELOG - -## AI Assistant Guidelines - -### Code Generation -- **Always include docstrings** for new functions and classes -- **Follow existing patterns** in the codebase -- **Consider edge cases** and error conditions - -### Code Review and Suggestions -- **Check for consistency** with existing code style -- **Verify physical units** and coordinate systems -- **Ensure proper error handling** and input validation -- **Suggest performance improvements** when applicable -- **Recommend additional tests** for new functionality - -### Documentation Assistance -- **Use NumPy docstring format** consistently -- **Include practical examples** in docstrings -- **Document physical meanings** of parameters -- **Cross-reference related functions** and classes - -## Testing Guidelines - -### Unit Tests -- **Test individual methods** in isolation -- **Use fixtures** from the appropriate test fixture modules -- **Mock external dependencies** when necessary -- **Test both happy path and error conditions** - -### Integration Tests -- **Test interactions** between components -- **Verify end-to-end workflows** (Environment → Motor → Rocket → Flight) - -### Test Data -- **Use realistic parameters** for rocket simulations -- **Include edge cases** (very small/large rockets, extreme conditions) -- **Test with different coordinate systems** and orientations - -## Project-Specific Considerations - -### User Experience -- **Provide helpful error messages** with context and suggestions -- **Include examples** in docstrings and documentation -- **Support common use cases** with reasonable defaults - -## Examples of Good Practices - -### Function Definition -```python -def calculate_drag_force( - velocity, - air_density, - drag_coefficient, - reference_area -): - """Calculate drag force using the standard drag equation. - - Parameters - ---------- - velocity : float - Velocity magnitude in m/s. - air_density : float - Air density in kg/m³. - drag_coefficient : float - Dimensionless drag coefficient. - reference_area : float - Reference area in m². - - Returns - ------- - float - Drag force in N. - - Examples - -------- - >>> drag_force = calculate_drag_force(100, 1.225, 0.5, 0.01) - >>> print(f"Drag force: {drag_force:.2f} N") - """ - if velocity < 0: - raise ValueError("Velocity must be non-negative") - if air_density <= 0: - raise ValueError("Air density must be positive") - if reference_area <= 0: - raise ValueError("Reference area must be positive") - - return 0.5 * air_density * velocity**2 * drag_coefficient * reference_area -``` - -### Test Example -```python -def test_calculate_drag_force_returns_correct_value(): - """Test drag force calculation with known inputs.""" - # Arrange - velocity = 100.0 # m/s - air_density = 1.225 # kg/m³ - drag_coefficient = 0.5 - reference_area = 0.01 # m² - expected_force = 30.625 # N - - # Act - result = calculate_drag_force(velocity, air_density, drag_coefficient, reference_area) - - # Assert - assert abs(result - expected_force) < 1e-6 -``` - - -Remember: RocketPy prioritizes accuracy, performance, and usability. Always consider the physical meaning of calculations and provide clear, well-documented interfaces for users. +# RocketPy Workspace Instructions + +## Code Style +- Use snake_case for variables, functions, methods, and modules. Use descriptive names. +- Use PascalCase for classes and UPPER_SNAKE_CASE for constants. +- Keep lines at 88 characters and follow PEP 8 unless existing code in the target file differs. +- Run Ruff as the source of truth for formatting/import organization: + - `make format` + - `make lint` +- Use NumPy-style docstrings for public classes, methods, and functions, including units. +- In case of tooling drift between docs and config, prefer current repository tooling in `Makefile` + and `pyproject.toml`. + +## Architecture +- RocketPy is a modular Python library; keep feature logic in the correct package boundary: + - `rocketpy/simulation`: flight simulation and Monte Carlo orchestration. + - `rocketpy/rocket`, `rocketpy/motors`, `rocketpy/environment`: domain models. + - `rocketpy/mathutils`: numerical primitives and interpolation utilities. + - `rocketpy/plots`, `rocketpy/prints`: output and visualization layers. +- Prefer extending existing classes/patterns over introducing new top-level abstractions. +- Preserve public API stability in `rocketpy/__init__.py` exports. + +## Build and Test +- Use Makefile targets for OS-agnostic workflows: + - `make install` + - `make pytest` + - `make pytest-slow` + - `make coverage` + - `make coverage-report` + - `make build-docs` +- Before finishing code changes, run focused tests first, then broader relevant suites. +- When running Python directly in this workspace, prefer `.venv/Scripts/python.exe`. +- Slow tests are explicitly marked with `@pytest.mark.slow` and are run with `make pytest-slow`. +- For docs changes, check `make build-docs` output and resolve warnings/errors when practical. + +## Development Workflow +- Target pull requests to `develop` by default; `master` is the stable branch. +- Use branch names in `type/description` format, such as: + - `bug/` + - `doc/` + - `enh/` + - `mnt/` + - `tst/` +- Prefer rebasing feature branches on top of `develop` to keep history linear. +- Keep commit and PR titles explicit and prefixed with project acronyms when possible: + - `BUG`, `DOC`, `ENH`, `MNT`, `TST`, `BLD`, `REL`, `REV`, `STY`, `DEV`. + +## Conventions +- SI units are the default. Document units and coordinate-system references explicitly. +- Position/reference-frame arguments are critical in this codebase. Be explicit about orientation + (for example, `tail_to_nose`, `nozzle_to_combustion_chamber`). +- Include unit tests for new behavior. Follow AAA structure and clear test names. +- Use fixtures from `tests/fixtures`; if adding a new fixture module, update `tests/conftest.py`. +- Use `pytest.approx` for floating-point checks where appropriate. +- Use `@cached_property` for expensive computations when helpful, and be careful with stale-cache + behavior when underlying mutable state changes. +- Keep behavior backward compatible across the public API exported via `rocketpy/__init__.py`. +- Prefer extending existing module patterns over creating new top-level package structure. + +## Testing Taxonomy +- Unit tests are mandatory for new behavior. +- Unit tests in RocketPy can be sociable (real collaborators allowed) but should still be fast and + method-focused. +- Treat tests as integration tests when they are strongly I/O-oriented or broad across many methods, + including `all_info()` convention cases. +- Acceptance tests represent realistic user/flight scenarios and may compare simulation thresholds to + known flight data. + +## Documentation Links +- Contributor workflow and setup: `docs/development/setting_up.rst` +- Style and naming details: `docs/development/style_guide.rst` +- Testing philosophy and structure: `docs/development/testing.rst` +- API reference conventions: `docs/reference/index.rst` +- Domain/physics background: `docs/technical/index.rst` + +## Scoped Customizations +- Simulation-specific rules: `.github/instructions/simulation-safety.instructions.md` +- Test-authoring rules: `.github/instructions/tests-python.instructions.md` +- RST/Sphinx documentation rules: `.github/instructions/sphinx-docs.instructions.md` +- Specialized review persona: `.github/agents/rocketpy-reviewer.agent.md` diff --git a/.github/instructions/simulation-safety.instructions.md b/.github/instructions/simulation-safety.instructions.md new file mode 100644 index 000000000..cc2af5d27 --- /dev/null +++ b/.github/instructions/simulation-safety.instructions.md @@ -0,0 +1,41 @@ +--- +description: "Use when editing rocketpy/simulation code, including Flight state updates, Monte Carlo orchestration, post-processing, or cached computations. Covers simulation state safety, unit/reference-frame clarity, and regression checks." +name: "Simulation Safety" +applyTo: "rocketpy/simulation/**/*.py" +--- +# Simulation Safety Guidelines + +- Keep simulation logic inside `rocketpy/simulation` and avoid leaking domain behavior that belongs in + `rocketpy/rocket`, `rocketpy/motors`, or `rocketpy/environment`. +- Preserve public API behavior and exported names used by `rocketpy/__init__.py`. +- Prefer extending existing simulation components before creating new abstractions: + - `flight.py`: simulation state, integration flow, and post-processing. + - `monte_carlo.py`: orchestration and statistical execution workflows. + - `flight_data_exporter.py` and `flight_data_importer.py`: persistence and interchange. + - `flight_comparator.py`: comparative analysis outputs. +- Be explicit with physical units and reference frames in new parameters, attributes, and docstrings. +- For position/orientation-sensitive behavior, use explicit conventions (for example + `tail_to_nose`, `nozzle_to_combustion_chamber`) and avoid implicit assumptions. +- Treat state mutation carefully when cached values exist. +- If changes can invalidate `@cached_property` values, either avoid post-computation mutation or + explicitly invalidate affected caches in a controlled, documented way. +- Keep numerical behavior deterministic unless stochastic behavior is intentional and documented. +- For Monte Carlo and stochastic code paths, make randomness controllable and reproducible when tests + rely on it. +- Prefer vectorized NumPy operations for hot paths and avoid introducing Python loops in + performance-critical sections without justification. +- Guard against numerical edge cases (zero/near-zero denominators, interpolation limits, and boundary + conditions). +- Do not change default numerical tolerances or integration behavior without documenting motivation and + validating regression impact. +- Add focused regression tests for changed behavior, including edge cases and orientation-dependent + behavior. +- For floating-point expectations, use `pytest.approx` with meaningful tolerances. +- Run focused tests first, then broader relevant tests (`make pytest` and `make pytest-slow` when + applicable). + +See: +- `docs/development/testing.rst` +- `docs/development/style_guide.rst` +- `docs/development/setting_up.rst` +- `docs/technical/index.rst` diff --git a/.github/instructions/sphinx-docs.instructions.md b/.github/instructions/sphinx-docs.instructions.md new file mode 100644 index 000000000..8c24cac53 --- /dev/null +++ b/.github/instructions/sphinx-docs.instructions.md @@ -0,0 +1,32 @@ +--- +description: "Use when writing or editing docs/**/*.rst. Covers Sphinx/reStructuredText conventions, cross-references, toctree hygiene, and RocketPy unit/reference-frame documentation requirements." +name: "Sphinx RST Conventions" +applyTo: "docs/**/*.rst" +--- +# Sphinx and RST Guidelines + +- Follow existing heading hierarchy and style in the target document. +- Prefer linking to existing documentation pages instead of duplicating content. +- Use Sphinx cross-references where appropriate (`:class:`, `:func:`, `:mod:`, `:doc:`, `:ref:`). +- Keep API names and module paths consistent with current code exports. +- Document physical units and coordinate/reference-frame conventions explicitly. +- Include concise, practical examples when introducing new user-facing behavior. +- Keep prose clear and technical; avoid marketing language in development/reference docs. +- When adding a new page, update the relevant `toctree` so it appears in navigation. +- Use RocketPy docs build workflow: + - `make build-docs` from repository root for normal validation. + - If stale artifacts appear, clean docs build outputs via `cd docs && make clean`, then rebuild. +- Treat new Sphinx warnings/errors as issues to fix or explicitly call out in review notes. +- Keep `docs/index.rst` section structure coherent with user, development, reference, technical, and + examples navigation. +- Do not edit Sphinx-generated scaffolding files unless explicitly requested: + - `docs/Makefile` + - `docs/make.bat` +- For API docs, ensure references remain aligned with exported/public objects and current module paths. + +See: +- `docs/index.rst` +- `docs/development/build_docs.rst` +- `docs/development/style_guide.rst` +- `docs/reference/index.rst` +- `docs/technical/index.rst` diff --git a/.github/instructions/tests-python.instructions.md b/.github/instructions/tests-python.instructions.md new file mode 100644 index 000000000..1e9626142 --- /dev/null +++ b/.github/instructions/tests-python.instructions.md @@ -0,0 +1,36 @@ +--- +description: "Use when creating or editing pytest files in tests/. Enforces AAA structure, naming conventions, fixture usage, parameterization, slow-test marking, and numerical assertion practices for RocketPy." +name: "RocketPy Pytest Standards" +applyTo: "tests/**/*.py" +--- +# RocketPy Test Authoring Guidelines + +- Unit tests are mandatory for new behavior. +- Follow AAA structure in each test: Arrange, Act, Assert. +- Use descriptive test names matching project convention: + - `test_methodname` + - `test_methodname_stateundertest` + - `test_methodname_expectedbehaviour` +- Include docstrings that clearly state expected behavior and context. +- Prefer parameterization for scenario matrices instead of duplicated tests. +- Classify tests correctly: + - `tests/unit`: fast, method-focused tests (sociable unit tests are acceptable in RocketPy). + - `tests/integration`: broad multi-method/component interactions and strongly I/O-oriented cases. + - `tests/acceptance`: realistic end-user/flight scenarios with threshold-based expectations. +- By RocketPy convention, tests centered on `all_info()` behavior are integration tests. +- Reuse fixtures from `tests/fixtures` whenever possible. +- Keep fixture organization aligned with existing categories under `tests/fixtures` + (environment, flight, motor, rockets, surfaces, units, etc.). +- If you add a new fixture module, update `tests/conftest.py` so fixtures are discoverable. +- Keep tests deterministic: set seeds when randomness is involved and avoid unstable external + dependencies unless integration behavior explicitly requires them. +- Use `pytest.approx` for floating-point comparisons with realistic tolerances. +- Mark expensive tests with `@pytest.mark.slow` and ensure they can run under the project slow-test + workflow. +- Include at least one negative or edge-case assertion for new behaviors. +- When adding a bug fix, include a regression test that fails before the fix and passes after it. + +See: +- `docs/development/testing.rst` +- `docs/development/style_guide.rst` +- `docs/development/setting_up.rst` diff --git a/.github/renovate.json b/.github/renovate.json new file mode 100644 index 000000000..1d2808213 --- /dev/null +++ b/.github/renovate.json @@ -0,0 +1,42 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "config:recommended" + ], + "baseBranches": [ + "develop" + ], + "labels": [ + "dependencies" + ], + "dependencyDashboard": true, + "automerge": false, + "pip-compile": { + "managerFilePatterns": [ + "/^docs/requirements\\.txt$/" + ] + }, + "packageRules": [ + { + "matchPackagePatterns": [ + "*" + ], + "matchUpdateTypes": [ + "minor", + "patch" + ], + "groupName": "all non-major dependencies", + "groupSlug": "all-non-major" + }, + { + "description": "docs/requirements.txt is autogenerated by pip-compile from docs/requirements.in. Let the pip-compile manager regenerate the lock file, and stop the pip_requirements manager from editing the autogenerated file line by line.", + "matchManagers": [ + "pip_requirements" + ], + "matchFileNames": [ + "docs/requirements.txt" + ], + "enabled": false + } + ] +} diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml new file mode 100644 index 000000000..7bf27daf7 --- /dev/null +++ b/.github/workflows/changelog.yml @@ -0,0 +1,83 @@ +name: Populate Changelog +on: + pull_request: + types: [closed] + branches: + - develop + +permissions: + contents: write + +jobs: + Changelog: + if: github.event.pull_request.merged == true + runs-on: ubuntu-latest + + steps: + - name: Clone RocketPy + uses: actions/checkout@v4 + with: + repository: RocketPy-Team/RocketPy + ref: develop + token: ${{ secrets.RELEASE_TOKEN }} + + - name: Update Changelog + env: + PR_TITLE: ${{ github.event.pull_request.title }} + PR_NUMBER: ${{ github.event.pull_request.number }} + PR_LABELS: ${{ join(github.event.pull_request.labels.*.name, ',') }} + run: | + # The PR title is untrusted input, so it is read from the environment + # inside Python rather than interpolated into a shell/sed program. + # This avoids both shell injection and sed breaking on special + # characters (\, /, &, newlines) in the title. + python - <<'PY' + import os + + labels = os.environ.get("PR_LABELS", "") + title = os.environ["PR_TITLE"] + number = os.environ["PR_NUMBER"] + + section, prefix = "### Added", "ENH" + if "Bug" in labels: + section, prefix = "### Fixed", "BUG" + elif "Refactor" in labels: + section, prefix = "### Changed", "MNT" + elif "Docs" in labels and "Git housekeeping" in labels: + section, prefix = "### Changed", "DOC" + elif "Tests" in labels: + section, prefix = "### Changed", "TST" + elif "Docs" in labels: + section, prefix = "### Added", "DOC" + + entry = ( + f"- {prefix}: {title} " + f"[#{number}](https://github.com/RocketPy-Team/RocketPy/pull/{number})\n" + ) + + with open("CHANGELOG.md", encoding="utf-8") as handle: + lines = handle.readlines() + + for index, line in enumerate(lines): + if line.rstrip("\n") == section: + insert_at = index + 1 + # Place the entry at the top of the list, after the single + # blank line that follows the section header. + if insert_at < len(lines) and lines[insert_at].strip() == "": + insert_at += 1 + lines.insert(insert_at, entry) + break + else: + raise SystemExit(f"Section {section!r} not found in CHANGELOG.md") + + with open("CHANGELOG.md", "w", encoding="utf-8") as handle: + handle.writelines(lines) + PY + + - name: Push Changes + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git add CHANGELOG.md + git commit -m "DOC: Update Changelog for PR #${{ github.event.pull_request.number }}" + git push diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 000000000..806bef0dc --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,107 @@ +name: Documentation + +on: + # Only PRs targeting master (base branch = master) and pushes to master. + pull_request: + types: [opened, synchronize, reopened, ready_for_review] + branches: [master] + paths: + - "docs/**" + - "rocketpy/**" # docstrings feed the autodoc API reference + - "pyproject.toml" + - "requirements*" + - ".readthedocs.yaml" + - ".github/workflows/docs.yml" + push: + branches: [master] + paths: + - "docs/**" + - "rocketpy/**" + - "pyproject.toml" + - "requirements*" + - ".readthedocs.yaml" + - ".github/workflows/docs.yml" + +# Least privilege: this workflow only needs to read the repository. +permissions: + contents: read + +defaults: + run: + shell: bash + +jobs: + build-docs: + runs-on: ubuntu-latest + strategy: + matrix: + python-version: ["3.12"] # match the Read the Docs build environment + env: + MPLBACKEND: Agg + # Render jupyter-execute cells as static code blocks instead of running + # them. This keeps the check fast and deterministic: no simulations and, + # crucially, no live network calls to external weather/data servers (which + # make the full build slow and flaky). Read the Docs still executes the + # cells to render live outputs; this job only validates the docs structure + # (reStructuredText, cross-references, toctrees, autodoc API reference). + DOCS_SKIP_EXECUTE: "1" + steps: + - uses: actions/checkout@v4 + + - name: Install pandoc (required by nbsphinx) + run: sudo apt-get update && sudo apt-get install -y pandoc + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + cache: "pip" + cache-dependency-path: | + docs/requirements.txt + requirements.txt + + - name: Install dependencies (mirrors .readthedocs.yaml) + run: | + python -m pip install --upgrade pip + pip install -r docs/requirements.txt + pip install -r requirements.txt + pip install .[all] + + - name: Cache Sphinx doctrees + uses: actions/cache@v4 + with: + path: docs/_build/doctrees + key: sphinx-doctrees-${{ github.ref }}-${{ hashFiles('docs/**', 'rocketpy/**') }} + restore-keys: | + sphinx-doctrees-${{ github.ref }}- + sphinx-doctrees- + + - name: Build docs (warnings-as-errors) + working-directory: docs + run: | + sphinx-build -b html -W --keep-going \ + -d _build/doctrees \ + -w _build/sphinx-warnings.txt \ + . _build/html + + - name: Surface Sphinx warnings as annotations + if: always() + run: | + if [ -s docs/_build/sphinx-warnings.txt ]; then + echo "::group::Sphinx warnings" + cat docs/_build/sphinx-warnings.txt + echo "::endgroup::" + while IFS= read -r line; do + echo "::warning::${line}" + done < docs/_build/sphinx-warnings.txt + else + echo "No Sphinx warnings 🎉" + fi + + - name: Upload built HTML + if: always() + uses: actions/upload-artifact@v4 + with: + name: docs-html + path: docs/_build/html + if-no-files-found: error diff --git a/.pylintrc b/.pylintrc index b0aaf655c..c76a6d459 100644 --- a/.pylintrc +++ b/.pylintrc @@ -225,6 +225,11 @@ good-names=FlightPhases, center_of_mass_without_motor_to_CDM, motor_center_of_dry_mass_to_CDM, generic_motor_cesaroni_M1520, + R_phi, + R_delta, + R_pi, + R_uncanted, + R_body_to_fin, Re, # Reynolds number # Good variable names regexes, separated by a comma. If names match any regex, @@ -385,7 +390,7 @@ indent-string=' ' max-line-length=88 # Maximum number of lines in a module. -max-module-lines=3000 +max-module-lines=3050 # Allow the body of a class to be on the same line as the declaration if body # contains single statement. diff --git a/CHANGELOG.md b/CHANGELOG.md index 183479c4b..fd1fe4c64 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,15 +32,64 @@ Attention: The newest changes should be on top --> ### Added -- +### Changed + +### Fixed + + +## [v1.13.0] - 2026-07-04 + +### Added + +- ENH: FIX: pre release hardening [#1047](https://github.com/RocketPy-Team/RocketPy/pull/1047) +- ENH: DEV: Claude Code ruff hooks (auto-format on edit + pre-push lint guard) [#1046](https://github.com/RocketPy-Team/RocketPy/pull/1046) +- ENH: CI: create a CI for testing docs updates + solve different docs issues [#1045](https://github.com/RocketPy-Team/RocketPy/pull/1045) +- ENH: MNT: final fixes before next release [#1044](https://github.com/RocketPy-Team/RocketPy/pull/1044) +- ENH: Individual Fins: add `Fin`, `TrapezoidalFin`, `EllipticalFin`, and `FreeFormFin` classes for modeling asymmetric or individually-positioned fins [#818](https://github.com/RocketPy-Team/RocketPy/pull/818) +- ENH: Add AIGFS and HRRR forecast models to the Environment class [#951](https://github.com/RocketPy-Team/RocketPy/pull/951) +- ENH: Add RingClusterMotor for annular clustered motor modeling [#924](https://github.com/RocketPy-Team/RocketPy/pull/924) +- ENH: Discrete and Continuous Controllers [#946](https://github.com/RocketPy-Team/RocketPy/pull/946) +- ENH: Add custom exceptions and unstable rocket warning [#970](https://github.com/RocketPy-Team/RocketPy/pull/970) +- ENH: Adopt built-in Python logging instead of print() calls (closes [#450](https://github.com/RocketPy-Team/RocketPy/issues/450)) [#973](https://github.com/RocketPy-Team/RocketPy/pull/973) +- ENH: Pass acceleration (`u_dot`) data to parachute trigger functions [#911](https://github.com/RocketPy-Team/RocketPy/pull/911) +- ENH: Add 3D flight trajectory and attitude animations in Flight plots layer [#909](https://github.com/RocketPy-Team/RocketPy/pull/909) +- ENH: Monte Carlo Formatting Options [#947](https://github.com/RocketPy-Team/RocketPy/pull/947) +- ENH: Adaptive Monte Carlo via Convergence Criteria [#922](https://github.com/RocketPy-Team/RocketPy/pull/922) +- ENH: Auto-Detection of Pressure Conversion Factor [#966](https://github.com/RocketPy-Team/RocketPy/pull/966) +- ENH: Introduce pressure unit conversion when using forecast/reanalysis/ensemble data [#955](https://github.com/RocketPy-Team/RocketPy/pull/955) +- MNT: Refactor parachute implementation with abstract base and hemispherical model split [#958](https://github.com/RocketPy-Team/RocketPy/pull/958) +- DOC: Add aerodynamic surfaces user guide [#1043](https://github.com/RocketPy-Team/RocketPy/pull/1043) +- DOC: Add Valkyrie flight example (Bisky Team) [#967](https://github.com/RocketPy-Team/RocketPy/pull/967) +- DOC: Configure AI instructions and update developer docs [#975](https://github.com/RocketPy-Team/RocketPy/pull/975) +- ENH: Auto Populate Changelog [#919](https://github.com/RocketPy-Team/RocketPy/pull/919) +- MNT: Sync develop's Renovate config with master (#1039) [#1040](https://github.com/RocketPy-Team/RocketPy/pull/1040) +- MNT: Configure Renovate Bot targeting develop branch [#972](https://github.com/RocketPy-Team/RocketPy/pull/972) ### Changed -- +- REL: bumps up rocketpy version to 1.13.0 [#1048](https://github.com/RocketPy-Team/RocketPy/pull/1048) +- MNT: **Breaking**: `Parachute` is now an abstract base class and can no longer be instantiated directly; use `HemisphericalParachute` (or `Rocket.add_parachute`, which builds it for you). Loading old serialized files still works [#958](https://github.com/RocketPy-Team/RocketPy/pull/958) +- MNT: Discrete controllers are now called exactly once per time node (previously twice); results may change for stateful controllers and `observed_variables` no longer contains duplicated entries [#949](https://github.com/RocketPy-Team/RocketPy/pull/949) +- MNT: Multi-dimensional linear `Function` objects now apply their extrapolation rule to points outside the data's convex hull (previously returned NaN) [#969](https://github.com/RocketPy-Team/RocketPy/pull/969) +- MNT: Informational messages previously shown with `print()` now use Python logging and are silent by default; call `rocketpy.utils.enable_logging()` to see them [#973](https://github.com/RocketPy-Team/RocketPy/pull/973) + +### Deprecated + +- MNT: Rename `radius` to `radius_function` in `CylindricalTank` and `SphericalTank`; old `radius=` keyword argument now raises `DeprecationWarning` [#957](https://github.com/RocketPy-Team/RocketPy/pull/957) + +### Removed + +- MNT: Remove redundant, unused per-level `wind_heading`/`wind_direction` functions from `EnvironmentAnalysis` pressure-level data (derivable from `wind_velocity_x`/`wind_velocity_y`) [#1041](https://github.com/RocketPy-Team/RocketPy/pull/1041) ### Fixed -- +- BUG: fix individual fin (`TrapezoidalFin`, `EllipticalFin`, `FreeFormFin`) serialization crash when saving rockets/flights [#1048](https://github.com/RocketPy-Team/RocketPy/pull/1048) +- BUG: support the new Wyoming sounding WSGI page format (legacy cgi-bin endpoint was discontinued by UWyo) [#1048](https://github.com/RocketPy-Team/RocketPy/pull/1048) +- FIX: pre-release hardening — bug fixes across the unreleased features [#1047](https://github.com/RocketPy-Team/RocketPy/pull/1047) +- BUG: Remove duplicate controller process; controllers were being invoked twice per time node [#949](https://github.com/RocketPy-Team/RocketPy/pull/949) +- BUG: fix wind heading and direction wraparound interpolation [#974](https://github.com/RocketPy-Team/RocketPy/pull/974) +- BUG: fix NaN in ND linear interpolation outside convex hull (closes [#926](https://github.com/RocketPy-Team/RocketPy/issues/926)) [#969](https://github.com/RocketPy-Team/RocketPy/pull/969) +- BUG: Add wraparound logic for wind direction in environment plots [#939](https://github.com/RocketPy-Team/RocketPy/pull/939) ## [v1.12.1] - 2026-04-03 @@ -78,17 +127,16 @@ Attention: The newest changes should be on top --> ### Fixed -- BUG: Restore `Rocket.power_off_drag` and `Rocket.power_on_drag` as `Function` objects while preserving raw inputs in `power_off_drag_input` and `power_on_drag_input` [#941](https://github.com/RocketPy-Team/RocketPy/pull/941) -- BUG: Add explicit timeouts to ThrustCurve API requests [#935](https://github.com/RocketPy-Team/RocketPy/pull/935) - BUG: Fix hard-coded radius value for parachute added mass calculation [#889](https://github.com/RocketPy-Team/RocketPy/pull/889) +- BUG: Fix incorrect Jacobian in `only_radial_burn` branch of `SolidMotor.evaluate_geometry` [#944](https://github.com/RocketPy-Team/RocketPy/pull/944) +- ENH: Restore `power_off_drag`/`power_on_drag` as `Function` objects and preserve raw user input in `_input` attributes [#941](https://github.com/RocketPy-Team/RocketPy/pull/941) +- ENH: Add explicit timeouts to ThrustCurve API requests [#940](https://github.com/RocketPy-Team/RocketPy/pull/940) - DOC: Fix documentation build [#908](https://github.com/RocketPy-Team/RocketPy/pull/908) - BUG: energy_data plot not working for 3 dof sims [[#906](https://github.com/RocketPy-Team/RocketPy/issues/906)] - BUG: Fix CSV column header spacing in FlightDataExporter [#864](https://github.com/RocketPy-Team/RocketPy/issues/864) - BUG: Fix parallel Monte Carlo simulation showing incorrect iteration count [#806](https://github.com/RocketPy-Team/RocketPy/pull/806) - BUG: Fix missing titles in roll parameter plots for fin sets [#934](https://github.com/RocketPy-Team/RocketPy/pull/934) - BUG: Duplicate _controllers in Flight.TimeNodes.merge() [#931](https://github.com/RocketPy-Team/RocketPy/pull/931) -- BUG: Fix incorrect Jacobian in `only_radial_burn` branch of `SolidMotor.evaluate_geometry` [#935](https://github.com/RocketPy-Team/RocketPy/pull/935) -- BUG: Add explicit timeouts to ThrustCurve API requests [#935](https://github.com/RocketPy-Team/RocketPy/pull/935) ## [v1.11.0] - 2025-11-01 diff --git a/README.md b/README.md index 8247ab1a3..8a3a4b651 100644 --- a/README.md +++ b/README.md @@ -143,7 +143,7 @@ The following image shows how the four main classes interact with each other: A typical workflow starts with importing these classes from RocketPy: ```python -from rocketpy import Environment, Rocket, SolidMotor, Flight +from rocketpy import Environment, Rocket, SolidMotor, Flight, HemisphericalParachute ``` An optional step is to import datetime, which is used to define the date of the simulation: @@ -255,7 +255,7 @@ tail = calisto.add_tail( You may want to add parachutes to your rocket as well: ```python -main = calisto.add_parachute( +main = HemisphericalParachute( name="main", cd_s=10.0, trigger=800, # ejection altitude in meters @@ -267,7 +267,7 @@ main = calisto.add_parachute( porosity=0.0432, ) -drogue = calisto.add_parachute( +drogue = HemisphericalParachute( name="drogue", cd_s=1.0, trigger="apogee", # ejection at apogee @@ -278,6 +278,9 @@ drogue = calisto.add_parachute( height=1.5, porosity=0.0432, ) + +calisto.add_parachute(parachute = main) +calisto.add_parachute(parachute = drogue) ``` Finally, you can create a Flight object to simulate your trajectory. To get help on the Flight class, use: @@ -310,10 +313,12 @@ Here is just a quick taste of what RocketPy is able to calculate. There are hund ![6-DOF Trajectory Plot](https://raw.githubusercontent.com/RocketPy-Team/RocketPy/master/docs/static/rocketpy_example_trajectory.svg) -If you want to see the trajectory on Google Earth, RocketPy acn easily export a KML file for you: +If you want to see the trajectory on Google Earth, RocketPy can easily export a KML file for you: ```python -test_flight.export_kml(file_name="test_flight.kml") +from rocketpy.simulation import FlightDataExporter + +FlightDataExporter(test_flight).export_kml(file_name="test_flight.kml") ``` 6-DOF Trajectory Plot diff --git a/data/motors/cesaroni/Cesaroni_1997K650-21A.eng b/data/motors/cesaroni/Cesaroni_1997K650-21A.eng new file mode 100644 index 000000000..e95c47090 --- /dev/null +++ b/data/motors/cesaroni/Cesaroni_1997K650-21A.eng @@ -0,0 +1,12 @@ +;Pink 54mm 5G +;1997-K650-PK-21 +1997-K650-PK-21 54 488 21-19-17-15-13-11 1.0651 1.71 CTI +0.011 1353.5 +0.028 793.832 +0.186 815.421 +2.578 601.186 +2.689 479.953 +2.855 189.324 +3.086 43.179 +3.451 0 +; \ No newline at end of file diff --git a/data/rockets/valkyrie/Dima.json b/data/rockets/valkyrie/Dima.json new file mode 100644 index 000000000..048ba3c74 --- /dev/null +++ b/data/rockets/valkyrie/Dima.json @@ -0,0 +1,38 @@ +{ + "launch": { + "rail_length": { + "value": 10, + "dispersion": 0.001 + }, + "ensemble_member": null + }, + "Environment": { + "latitude": { + "value": 43.077771 + }, + "longitude": { + "value": -2.684446 + }, + "elevation": { + "value": 592 + }, + "max_expected_height": { + "value": 3000 + }, + "timezone": "Europe/Madrid" + }, + "Montecarlo": { + "map_filename": "Dima.PNG", + "map_scale": 1, + "append": false, + "map_limits": [ + -20000, + 20000, + -20000, + 20000 + ] + }, + "Flight": { + "max_time": 3000 + } +} diff --git a/data/rockets/valkyrie/VLK.json b/data/rockets/valkyrie/VLK.json new file mode 100644 index 000000000..92318f469 --- /dev/null +++ b/data/rockets/valkyrie/VLK.json @@ -0,0 +1,76 @@ +{ + "VLK": { + "rocket": { + "rocket_mass": {"value": 5.65, "dispersion": 0.2}, + "rocket_center_of_mass_without_motor": {"value": 0.844, "dispersion": 0.01}, + "rocket_coordinate_system_orientation": "tail_to_nose", + "rocket_inertia_11": {"value": 1.806, "dispersion": 0.1}, + "rocket_inertia_33": {"value": 0.0183, "dispersion": 0.001}, + "rocket_radius": {"value": 0.055, "dispersion": 0.0001}, + "motor_position": {"value": 0, "dispersion": 0} + }, + "motor": { + "motor_coordinate_system_orientation": "nozzle_to_combustion_chamber", + "motor_thrust_source": "./data/motors/cesaroni/Cesaroni_1997K650-21A.eng", + "motor_dry_mass": {"value": 0.6449, "dispersion": 0.001}, + "motor_inertia_11": {"value": 0.0343, "dispersion": 0.0001}, + "motor_inertia_33": {"value": 0.0008, "dispersion": 0.0001}, + "motor_dry_mass_position": {"value": 0.246, "dispersion": 0.001}, + "motor_impulse": {"value": 2300, "dispersion": 20}, + "motor_burn_time": {"value": 3.5, "dispersion": 0.1}, + "nozzle_radius": {"value": 0.045, "dispersion": 0.0005}, + "nozzle_position": {"value": 0}, + "throat_radius": {"value": 0.023, "dispersion": 0.0005}, + "grain_number": {"value": 5}, + "grain_separation": {"value": 0.001, "dispersion": 0.0001}, + "grain_density": {"value": 1170, "dispersion": 10}, + "grain_outer_radius": {"value": 0.025, "dispersion": 0.001}, + "grain_initial_inner_radius": {"value": 0.01, "dispersion": 0.000375}, + "grain_initial_height": {"value": 0.0966, "dispersion": 0.001}, + "grains_center_of_mass_position": {"value": 0.246, "dispersion": 0.003}, + "power_off_drag": {"value": 0.35, "dispersion": 0.05}, + "power_on_drag": {"value": 0.35, "dispersion": 0.05} + }, + "nose": { + "nose_length": {"value": 0.20, "dispersion": 0.01}, + "nose_kind": "elliptical", + "nose_power": {"value": null, "dispersion": null}, + "nose_position": {"value": 1.84, "dispersion": 0} + }, + "fins": { + "fin_span": {"value": 0.0768, "dispersion": 0.001}, + "fin_root_chord": {"value": 0.17, "dispersion": 0.005}, + "fin_tip_chord": {"value": 0.14, "dispersion": 0.005}, + "fin_sweep_length": {"value": 0.10, "dispersion": 0.003}, + "fin_airfoil": "None", + "fin_position": {"value": 0.148, "dispersion": 0.001}, + "fin_cant_angle": {"value": 0, "dispersion": 0}, + "fin_n": {"value": 4, "dispersion": 0} + }, + "tail": { + "top_radius": {"value": 0.055, "dispersion": 0.001}, + "bottom_radius": {"value": 0.03, "dispersion": 0.005}, + "length": {"value": 0.15, "dispersion": 0.005}, + "position": {"value": 0, "dispersion": 0} + }, + "main_chute": { + "cd_s_main": {"value": 5.786483801, "dispersion": 0.07}, + "main_lag": {"value": 1.73, "dispersion": 0.4}, + "main_sampling_rate": {"value": 105}, + "Funcion de Deploy": {"value": 0}, + "main_noise": [0, 8.3, 0.5] + }, + "drogue_chute": { + "cd_s_drogue": {"value": 0.258940616, "dispersion": 0.07}, + "drogue_lag": {"value": 1.73, "dispersion": 0.4}, + "drogue_sampling_rate": {"value": 105}, + "Funcion de Deploy": {"value": 0}, + "drogue_noise": [0, 8.3, 0.5] + }, + "rail_buttons": { + "upper_button_position": {"value": 1.13, "dispersion": 0}, + "lower_button_position": {"value": 0.383, "dispersion": 0}, + "rail_angular_position": {"value": 0, "dispersion": 0} + } + } +} \ No newline at end of file diff --git a/data/rockets/valkyrie/flightInfo_merged.csv b/data/rockets/valkyrie/flightInfo_merged.csv new file mode 100644 index 000000000..521103f73 --- /dev/null +++ b/data/rockets/valkyrie/flightInfo_merged.csv @@ -0,0 +1,12579 @@ +time,altitude +0,0.34424737095832825 +0.01,0.4096522331237793 +0.02,0.4844495952129364 +0.03,0.5686082243919373 +0.04,0.6620555520057678 +0.05,0.7647705674171448 +0.06,0.8767398595809937 +0.07,0.9979233145713806 +0.08,1.1282371282577515 +0.09,1.2677185535430908 +0.1,1.4164103269577026 +0.11,1.5742592811584473 +0.12,1.741287112236023 +0.13,1.9174764156341553 +0.14,2.1028378009796143 +0.15,2.297421455383301 +0.16,2.501166582107544 +0.17,2.714061737060547 +0.18,2.9361159801483154 +0.19,3.167316436767578 +0.2,3.4076409339904785 +0.21,3.6570794582366943 +0.22,3.9157540798187256 +0.23,4.183582305908203 +0.24,4.460573673248291 +0.25,4.746795177459717 +0.26,5.042205810546875 +0.27,5.346819877624512 +0.28,5.660666465759277 +0.29,5.983789920806885 +0.3,6.316145896911621 +0.31,6.657732963562012 +0.32,7.008546352386475 +0.33,7.368549346923828 +0.34,7.737792015075684 +0.35,8.116194725036621 +0.36,8.503837585449219 +0.37,8.900636672973633 +0.38,9.306602478027344 +0.39,9.7217378616333 +0.4,10.146217346191406 +0.41,10.57990837097168 +0.42,11.022735595703125 +0.43,11.474719047546387 +0.44,11.93583869934082 +0.45,12.406149864196777 +0.46,12.885601043701172 +0.47,13.374221801757812 +0.48,13.872072219848633 +0.49,14.379134178161621 +0.5,14.895292282104492 +0.51,15.420513153076172 +0.52,15.954848289489746 +0.53,16.49825096130371 +0.54,17.050731658935547 +0.55,17.61224365234375 +0.56,18.182798385620117 +0.57,18.762418746948242 +0.58,19.35106658935547 +0.59,19.948747634887695 +0.6,20.5555419921875 +0.61,21.17142677307129 +0.62,21.79645538330078 +0.63,22.430660247802734 +0.64,23.073835372924805 +0.65,23.72611427307129 +0.66,24.38735008239746 +0.67,25.057621002197266 +0.68,25.73690414428711 +0.69,26.425580978393555 +0.7,27.123353958129883 +0.71,27.830101013183594 +0.72,28.545774459838867 +0.73,29.27034568786621 +0.74,30.003990173339844 +0.75,30.74651336669922 +0.76,31.497953414916992 +0.77,32.25880432128906 +0.78,33.028717041015625 +0.79,33.80760955810547 +0.8,34.595558166503906 +0.81,35.392478942871094 +0.82,36.1983757019043 +0.83,37.01343536376953 +0.84,37.837337493896484 +0.85,38.670448303222656 +0.86,39.512413024902344 +0.87,40.36339569091797 +0.88,41.22346496582031 +0.89,42.09280014038086 +0.9,42.9708366394043 +0.91,43.857662200927734 +0.92,44.75386047363281 +0.93,45.65866470336914 +0.94,46.57217025756836 +0.95,47.495059967041016 +0.96,48.426639556884766 +0.97,49.36689376831055 +0.98,50.31669235229492 +0.99,51.27504348754883 +1,52.24203109741211 +1.01,53.218299865722656 +1.02,54.20310974121094 +1.03,55.197166442871094 +1.04,56.199951171875 +1.05,57.211910247802734 +1.06,58.23289489746094 +1.07,59.262271881103516 +1.08,60.300052642822266 +1.09,61.3477668762207 +1.1,62.40391159057617 +1.11,63.469051361083984 +1.12,64.54252624511719 +1.13,65.6246109008789 +1.14,66.71533966064453 +1.15,67.81461334228516 +1.16,68.92334747314453 +1.17,70.04035949707031 +1.18,71.1666259765625 +1.19,72.30133056640625 +1.2,73.44469451904297 +1.21,74.59632110595703 +1.22,75.75676727294922 +1.23,76.92515563964844 +1.24,78.1018295288086 +1.25,79.28691101074219 +1.26,80.48171997070312 +1.27,81.68443298339844 +1.28,82.89510345458984 +1.29,84.1144027709961 +1.3,85.34256744384766 +1.31,86.57843780517578 +1.32,87.82215881347656 +1.33,89.0754165649414 +1.34,90.33643341064453 +1.35,91.60639953613281 +1.36,92.8850326538086 +1.37,94.17122650146484 +1.38,95.46638488769531 +1.39,96.76910400390625 +1.4,98.0815658569336 +1.41,99.401611328125 +1.42,100.72897338867188 +1.43,102.06503295898438 +1.44,103.41033172607422 +1.45,104.76349639892578 +1.46,106.12544250488281 +1.47,107.49502563476562 +1.48,108.8729248046875 +1.49,110.25946044921875 +1.5,111.65361022949219 +1.51,113.05644989013672 +1.52,114.46788024902344 +1.53,115.8870849609375 +1.54,117.31358337402344 +1.55,118.74869537353516 +1.56,120.19194793701172 +1.57,121.6441650390625 +1.58,123.10456848144531 +1.59,124.57186889648438 +1.6,126.04759216308594 +1.61,127.5300064086914 +1.62,129.02284240722656 +1.63,130.52230834960938 +1.64,132.02969360351562 +1.65,133.54713439941406 +1.66,135.07106018066406 +1.67,136.6019287109375 +1.68,138.13922119140625 +1.69,139.68788146972656 +1.7,141.24359130859375 +1.71,142.80760192871094 +1.72,144.37892150878906 +1.73,145.95672607421875 +1.74,147.5425262451172 +1.75,149.13851928710938 +1.76,150.74009704589844 +1.77,152.3497314453125 +1.78,153.9647674560547 +1.79,155.58999633789062 +1.8,157.22280883789062 +1.81,158.86410522460938 +1.82,160.510986328125 +1.83,162.16403198242188 +1.84,163.8265380859375 +1.85,165.49752807617188 +1.86,167.1735076904297 +1.87,168.85845947265625 +1.88,170.55165100097656 +1.89,172.2493133544922 +1.9,173.9539337158203 +1.91,175.66673278808594 +1.92,177.38502502441406 +1.93,179.10891723632812 +1.94,180.84117126464844 +1.95,182.5819549560547 +1.96,184.32925415039062 +1.97,186.08436584472656 +1.98,187.85101318359375 +1.99,189.6222381591797 +2,191.400390625 +2.01,193.1836700439453 +2.02,194.978271484375 +2.03,196.77809143066406 +2.04,198.58248901367188 +2.05,200.3924560546875 +2.06,202.21206665039062 +2.07,204.03465270996094 +2.08,205.8641357421875 +2.09,207.70533752441406 +2.1,209.54965209960938 +2.11,211.39996337890625 +2.12,213.25881958007812 +2.13,215.12112426757812 +2.14,216.9900360107422 +2.15,218.86557006835938 +2.16,220.74851989746094 +2.17,222.6356658935547 +2.18,224.5264892578125 +2.19,226.42919921875 +2.2,228.3399200439453 +2.21,230.25482177734375 +2.22,232.17971801757812 +2.23,234.1068572998047 +2.24,236.04208374023438 +2.25,237.9814453125 +2.26,239.9283905029297 +2.27,241.88409423828125 +2.28,243.84158325195312 +2.29,245.8058319091797 +2.3,247.78099060058594 +2.31,249.7571258544922 +2.32,251.7446746826172 +2.33,253.7340087890625 +2.34,255.7299041748047 +2.35,257.7336120605469 +2.36,259.7427062988281 +2.37,261.75714111328125 +2.38,263.77862548828125 +2.39,265.8052978515625 +2.4,267.8353271484375 +2.41,269.8711242675781 +2.42,271.91412353515625 +2.43,273.9585266113281 +2.44,276.0101623535156 +2.45,278.0620422363281 +2.46,280.11932373046875 +2.47,282.1824951171875 +2.48,284.24554443359375 +2.49,286.3124084472656 +2.5,288.38299560546875 +2.51,290.4571228027344 +2.52,292.5429382324219 +2.53,294.6259460449219 +2.54,296.7168273925781 +2.55,298.8036193847656 +2.56,300.8930969238281 +2.57,302.9897155761719 +2.58,305.08245849609375 +2.59,307.1776428222656 +2.6,309.2787780761719 +2.61,311.3831787109375 +2.62,313.4951171875 +2.63,315.60382080078125 +2.64,317.7184753417969 +2.65,319.83489990234375 +2.66,321.9522399902344 +2.67,324.06781005859375 +2.68,326.185302734375 +2.69,328.305908203125 +2.7,330.427734375 +2.71,332.5437316894531 +2.72,334.6688232421875 +2.73,336.79718017578125 +2.74,338.9176025390625 +2.75,341.04644775390625 +2.76,343.1728515625 +2.77,345.29583740234375 +2.78,347.4095153808594 +2.79,349.5279235839844 +2.8,351.6434326171875 +2.81,353.7611999511719 +2.82,355.8721923828125 +2.83,357.9757995605469 +2.84,360.076904296875 +2.85,362.1820983886719 +2.86,364.2793884277344 +2.87,366.37017822265625 +2.88,368.4497985839844 +2.89,370.5351867675781 +2.9,372.6181640625 +2.91,374.6919860839844 +2.92,376.7639465332031 +2.93,378.82489013671875 +2.94,380.8809814453125 +2.95,382.93902587890625 +2.96,384.9892883300781 +2.97,387.0325622558594 +2.98,389.0752868652344 +2.99,391.1109924316406 +3,393.14361572265625 +3.01,395.1832580566406 +3.02,397.2127990722656 +3.03,399.25128173828125 +3.04,401.27740478515625 +3.05,403.30682373046875 +3.06,405.3287658691406 +3.07,407.352294921875 +3.08,409.37884521484375 +3.09,411.40667724609375 +3.1,413.4261169433594 +3.11,415.44366455078125 +3.12,417.45318603515625 +3.13,419.4560852050781 +3.14,421.46942138671875 +3.15,423.4714660644531 +3.16,425.483642578125 +3.17,427.4830017089844 +3.18,429.4854736328125 +3.19,431.4920654296875 +3.2,433.4911193847656 +3.21,435.4836120605469 +3.22,437.4779052734375 +3.23,439.4691162109375 +3.24,441.4677734375 +3.25,443.45587158203125 +3.26,445.4500427246094 +3.27,447.4422302246094 +3.28,449.42791748046875 +3.29,451.4157409667969 +3.3,453.39398193359375 +3.31,455.3801574707031 +3.32,457.35357666015625 +3.33,459.33294677734375 +3.34,461.3126525878906 +3.35,463.29217529296875 +3.36,465.2694396972656 +3.37,467.2418212890625 +3.38,469.2055969238281 +3.39,471.1628723144531 +3.4,473.13995361328125 +3.41,475.110595703125 +3.42,477.0699157714844 +3.43,479.0368957519531 +3.44,481.00341796875 +3.45,482.9580383300781 +3.46,484.9210510253906 +3.47,486.86993408203125 +3.48,488.827880859375 +3.49,490.7804870605469 +3.5,492.72442626953125 +3.51,494.6754150390625 +3.52,496.61883544921875 +3.53,498.5569763183594 +3.54,500.4932556152344 +3.55,502.436767578125 +3.56,504.3796081542969 +3.57,506.32232666015625 +3.58,508.254150390625 +3.59,510.1968994140625 +3.6,512.1262817382812 +3.61,514.0516967773438 +3.62,515.9713134765625 +3.63,517.8892211914062 +3.64,519.819580078125 +3.65,521.7365112304688 +3.66,523.6572265625 +3.67,525.5762939453125 +3.68,527.4837646484375 +3.69,529.4093017578125 +3.7,531.3226318359375 +3.71,533.2386474609375 +3.72,535.1658325195312 +3.73,537.081298828125 +3.74,539.0025634765625 +3.75,540.9182739257812 +3.76,542.8209838867188 +3.77,544.7211303710938 +3.78,546.6217041015625 +3.79,548.514892578125 +3.8,550.4153442382812 +3.81,552.3145751953125 +3.82,554.2217407226562 +3.83,556.1307983398438 +3.84,558.0324096679688 +3.85,559.9353637695312 +3.86,561.833984375 +3.87,563.7233276367188 +3.88,565.6027221679688 +3.89,567.4999389648438 +3.9,569.3853149414062 +3.91,571.2841796875 +3.92,573.168701171875 +3.93,575.0521850585938 +3.94,576.9283447265625 +3.95,578.8124389648438 +3.96,580.6815185546875 +3.97,582.5548095703125 +3.98,584.4413452148438 +3.99,586.3154296875 +4,588.1873168945312 +4.01,590.0615844726562 +4.02,591.9259643554688 +4.03,593.8135375976562 +4.04,595.69384765625 +4.05,597.5635986328125 +4.06,599.4391479492188 +4.07,601.303466796875 +4.08,603.1814575195312 +4.09,605.047607421875 +4.1,606.9124145507812 +4.11,608.77001953125 +4.12,610.626953125 +4.13,612.4813232421875 +4.14,614.3324584960938 +4.15,616.195556640625 +4.16,618.0567626953125 +4.17,619.9188232421875 +4.18,621.7676391601562 +4.19,623.634033203125 +4.2,625.5045776367188 +4.21,627.3645629882812 +4.22,629.2254638671875 +4.23,631.0724487304688 +4.24,632.92578125 +4.25,634.7720336914062 +4.26,636.6226196289062 +4.27,638.4695434570312 +4.28,640.3147583007812 +4.29,642.15087890625 +4.3,644.0023193359375 +4.31,645.84326171875 +4.32,647.6770629882812 +4.33,649.5215454101562 +4.34,651.361083984375 +4.35,653.1873779296875 +4.36,655.0271606445312 +4.37,656.8729858398438 +4.38,658.7062377929688 +4.39,660.547607421875 +4.4,662.3847045898438 +4.41,664.2189331054688 +4.42,666.0565185546875 +4.43,667.88916015625 +4.44,669.7335205078125 +4.45,671.5653076171875 +4.46,673.4005126953125 +4.47,675.2315673828125 +4.48,677.0606079101562 +4.49,678.8972778320312 +4.5,680.726318359375 +4.51,682.5421752929688 +4.52,684.348388671875 +4.53,686.1693725585938 +4.54,687.9925537109375 +4.55,689.8040161132812 +4.56,691.6107177734375 +4.57,693.4351196289062 +4.58,695.262451171875 +4.59,697.0745849609375 +4.6,698.8945922851562 +4.61,700.7049560546875 +4.62,702.5114135742188 +4.63,704.3089599609375 +4.64,706.1166381835938 +4.65,707.9317016601562 +4.66,709.7512817382812 +4.67,711.5647583007812 +4.68,713.3665161132812 +4.69,715.16650390625 +4.7,716.9789428710938 +4.71,718.7868041992188 +4.72,720.5816040039062 +4.73,722.3845825195312 +4.74,724.1859130859375 +4.75,725.990478515625 +4.76,727.78271484375 +4.77,729.58251953125 +4.78,731.374267578125 +4.79,733.1536865234375 +4.8,734.9293823242188 +4.81,736.7349243164062 +4.82,738.5296020507812 +4.83,740.3112182617188 +4.84,742.0934448242188 +4.85,743.8727416992188 +4.86,745.6483154296875 +4.87,747.4266967773438 +4.88,749.2078857421875 +4.89,750.9840087890625 +4.9,752.76513671875 +4.91,754.5376586914062 +4.92,756.30224609375 +4.93,758.0697631835938 +4.94,759.847412109375 +4.95,761.6157836914062 +4.96,763.3741455078125 +4.97,765.1376342773438 +4.98,766.9041137695312 +4.99,768.6707153320312 +5,770.4237060546875 +5.01,772.171875 +5.02,773.923095703125 +5.03,775.7012329101562 +5.04,777.4722290039062 +5.05,779.2384033203125 +5.06,781.013427734375 +5.07,782.7770385742188 +5.08,784.531494140625 +5.09,786.29345703125 +5.1,788.053466796875 +5.11,789.81298828125 +5.12,791.5584106445312 +5.13,793.3106079101562 +5.14,795.0660400390625 +5.15,796.8102416992188 +5.16,798.56494140625 +5.17,800.30908203125 +5.18,802.0543823242188 +5.19,803.7920532226562 +5.2,805.5366821289062 +5.21,807.2686157226562 +5.22,808.9996337890625 +5.23,810.7304077148438 +5.24,812.4667358398438 +5.25,814.1890258789062 +5.26,815.9235229492188 +5.27,817.6533813476562 +5.28,819.3838500976562 +5.29,821.1097412109375 +5.3,822.8311157226562 +5.31,824.5640258789062 +5.32,826.3026123046875 +5.33,828.0381469726562 +5.34,829.7648315429688 +5.35,831.4899291992188 +5.36,833.2156982421875 +5.37,834.9500732421875 +5.38,836.6836547851562 +5.39,838.4149780273438 +5.4,840.13818359375 +5.41,841.8540649414062 +5.42,843.5612182617188 +5.43,845.2866821289062 +5.44,847.0128784179688 +5.45,848.7295532226562 +5.46,850.44189453125 +5.47,852.14697265625 +5.48,853.8660888671875 +5.49,855.5786743164062 +5.5,857.2883911132812 +5.51,858.9916381835938 +5.52,860.681884765625 +5.53,862.3767700195312 +5.54,864.0769653320312 +5.55,865.7692260742188 +5.56,867.473388671875 +5.57,869.1734008789062 +5.58,870.8699340820312 +5.59,872.5593872070312 +5.6,874.2586059570312 +5.61,875.9463500976562 +5.62,877.6263427734375 +5.63,879.3021850585938 +5.64,880.9893798828125 +5.65,882.6666870117188 +5.66,884.3413696289062 +5.67,886.0193481445312 +5.68,887.6896362304688 +5.69,889.375732421875 +5.7,891.0665893554688 +5.71,892.7511596679688 +5.72,894.4295654296875 +5.73,896.1039428710938 +5.74,897.7831420898438 +5.75,899.4591064453125 +5.76,901.129638671875 +5.77,902.8064575195312 +5.78,904.4823608398438 +5.79,906.1476440429688 +5.8,907.8046264648438 +5.81,909.46142578125 +5.82,911.1342163085938 +5.83,912.8067626953125 +5.84,914.4703369140625 +5.85,916.1359252929688 +5.86,917.791015625 +5.87,919.4467163085938 +5.88,921.0919799804688 +5.89,922.7555541992188 +5.9,924.4124145507812 +5.91,926.0603637695312 +5.92,927.711181640625 +5.93,929.3707885742188 +5.94,931.0272827148438 +5.95,932.6719970703125 +5.96,934.3189086914062 +5.97,935.9591674804688 +5.98,937.5950317382812 +5.99,939.2478637695312 +6,940.887451171875 +6.01,942.5204467773438 +6.02,944.166748046875 +6.03,945.8027954101562 +6.04,947.4308471679688 +6.05,949.067138671875 +6.06,950.6939086914062 +6.07,952.3274536132812 +6.08,953.9515380859375 +6.09,955.5839233398438 +6.1,957.2105102539062 +6.11,958.8276977539062 +6.12,960.4583740234375 +6.13,962.0781860351562 +6.14,963.69677734375 +6.15,965.3148803710938 +6.16,966.9501342773438 +6.17,968.5767211914062 +6.18,970.1983642578125 +6.19,971.8077392578125 +6.2,973.4078979492188 +6.21,975.0296630859375 +6.22,976.6421508789062 +6.23,978.2542724609375 +6.24,979.8792114257812 +6.25,981.497802734375 +6.26,983.109375 +6.27,984.7168579101562 +6.28,986.3203735351562 +6.29,987.9213256835938 +6.3,989.5189819335938 +6.31,991.1141967773438 +6.32,992.7076416015625 +6.33,994.3088989257812 +6.34,995.9069213867188 +6.35,997.497314453125 +6.36,999.0867309570312 +6.37,1000.6825561523438 +6.38,1002.2693481445312 +6.39,1003.8610229492188 +6.4,1005.4429931640625 +6.41,1007.0174560546875 +6.42,1008.580810546875 +6.43,1010.1654052734375 +6.44,1011.7373657226562 +6.45,1013.3055419921875 +6.46,1014.8817138671875 +6.47,1016.4541625976562 +6.48,1018.0316772460938 +6.49,1019.607666015625 +6.5,1021.1806030273438 +6.51,1022.7645263671875 +6.52,1024.3409423828125 +6.53,1025.9180908203125 +6.54,1027.491455078125 +6.55,1029.071533203125 +6.56,1030.6396484375 +6.57,1032.2064208984375 +6.58,1033.7679443359375 +6.59,1035.3319091796875 +6.6,1036.8929443359375 +6.61,1038.449462890625 +6.62,1040.023193359375 +6.63,1041.58740234375 +6.64,1043.15087890625 +6.65,1044.7093505859375 +6.66,1046.2613525390625 +6.67,1047.81494140625 +6.68,1049.3583984375 +6.69,1050.9013671875 +6.7,1052.4437255859375 +6.71,1053.98486328125 +6.72,1055.5159912109375 +6.73,1057.0723876953125 +6.74,1058.620849609375 +6.75,1060.159912109375 +6.76,1061.6949462890625 +6.77,1063.2265625 +6.78,1064.7613525390625 +6.79,1066.2833251953125 +6.8,1067.8056640625 +6.81,1069.335693359375 +6.82,1070.863037109375 +6.83,1072.39306640625 +6.84,1073.9189453125 +6.85,1075.440185546875 +6.86,1076.9566650390625 +6.87,1078.4808349609375 +6.88,1080.0135498046875 +6.89,1081.54150390625 +6.9,1083.060302734375 +6.91,1084.580322265625 +6.92,1086.0904541015625 +6.93,1087.6121826171875 +6.94,1089.127685546875 +6.95,1090.6319580078125 +6.96,1092.1331787109375 +6.97,1093.6356201171875 +6.98,1095.143798828125 +6.99,1096.6444091796875 +7,1098.137451171875 +7.01,1099.635009765625 +7.02,1101.13671875 +7.03,1102.6419677734375 +7.04,1104.1368408203125 +7.05,1105.627197265625 +7.06,1107.1256103515625 +7.07,1108.6158447265625 +7.08,1110.1060791015625 +7.09,1111.592529296875 +7.1,1113.0694580078125 +7.11,1114.54052734375 +7.12,1116.0234375 +7.13,1117.520263671875 +7.14,1119.010498046875 +7.15,1120.4912109375 +7.16,1121.9661865234375 +7.17,1123.4449462890625 +7.18,1124.9237060546875 +7.19,1126.39892578125 +7.2,1127.874267578125 +7.21,1129.3416748046875 +7.22,1130.8046875 +7.23,1132.26416015625 +7.24,1133.7392578125 +7.25,1135.2034912109375 +7.26,1136.67236328125 +7.27,1138.131103515625 +7.28,1139.59814453125 +7.29,1141.0595703125 +7.3,1142.5225830078125 +7.31,1143.9984130859375 +7.32,1145.468505859375 +7.33,1146.93359375 +7.34,1148.388671875 +7.35,1149.84765625 +7.36,1151.3114013671875 +7.37,1152.76806640625 +7.38,1154.2176513671875 +7.39,1155.66455078125 +7.4,1157.1112060546875 +7.41,1158.554443359375 +7.42,1160.0032958984375 +7.43,1161.443603515625 +7.44,1162.877685546875 +7.45,1164.323974609375 +7.46,1165.7684326171875 +7.47,1167.2015380859375 +7.48,1168.6240234375 +7.49,1170.05810546875 +7.5,1171.4912109375 +7.51,1172.92041015625 +7.52,1174.344970703125 +7.53,1175.7774658203125 +7.54,1177.2000732421875 +7.55,1178.614501953125 +7.56,1180.041259765625 +7.57,1181.458984375 +7.58,1182.8824462890625 +7.59,1184.297607421875 +7.6,1185.7060546875 +7.61,1187.1209716796875 +7.62,1188.5291748046875 +7.63,1189.94091796875 +7.64,1191.3460693359375 +7.65,1192.770263671875 +7.66,1194.1861572265625 +7.67,1195.59912109375 +7.68,1197.0076904296875 +7.69,1198.4168701171875 +7.7,1199.8253173828125 +7.71,1201.22412109375 +7.72,1202.640625 +7.73,1204.0460205078125 +7.74,1205.442626953125 +7.75,1206.8538818359375 +7.76,1208.2548828125 +7.77,1209.6441650390625 +7.78,1211.0247802734375 +7.79,1212.4091796875 +7.8,1213.8046875 +7.81,1215.1915283203125 +7.82,1216.588134765625 +7.83,1217.985595703125 +7.84,1219.380859375 +7.85,1220.7689208984375 +7.86,1222.1541748046875 +7.87,1223.537353515625 +7.88,1224.9141845703125 +7.89,1226.2867431640625 +7.9,1227.6558837890625 +7.91,1229.0274658203125 +7.92,1230.395751953125 +7.93,1231.75537109375 +7.94,1233.1204833984375 +7.95,1234.4881591796875 +7.96,1235.8568115234375 +7.97,1237.2191162109375 +7.98,1238.57373046875 +7.99,1239.9176025390625 +8,1241.272216796875 +8.01,1242.6324462890625 +8.02,1243.99365234375 +8.03,1245.3568115234375 +8.04,1246.7276611328125 +8.05,1248.087158203125 +8.06,1249.43603515625 +8.07,1250.7874755859375 +8.08,1252.14306640625 +8.09,1253.4998779296875 +8.1,1254.8564453125 +8.11,1256.206787109375 +8.12,1257.5618896484375 +8.13,1258.90576171875 +8.14,1260.2523193359375 +8.15,1261.595703125 +8.16,1262.94482421875 +8.17,1264.2952880859375 +8.18,1265.64990234375 +8.19,1266.993896484375 +8.2,1268.3289794921875 +8.21,1269.6563720703125 +8.22,1270.9932861328125 +8.23,1272.3353271484375 +8.24,1273.6668701171875 +8.25,1274.995361328125 +8.26,1276.325927734375 +8.27,1277.66455078125 +8.28,1278.997802734375 +8.29,1280.33544921875 +8.3,1281.6656494140625 +8.31,1282.9862060546875 +8.32,1284.2994384765625 +8.33,1285.6031494140625 +8.34,1286.9178466796875 +8.35,1288.2333984375 +8.36,1289.5400390625 +8.37,1290.8482666015625 +8.38,1292.14990234375 +8.39,1293.453125 +8.4,1294.755615234375 +8.41,1296.0538330078125 +8.42,1297.3492431640625 +8.43,1298.6573486328125 +8.44,1299.9560546875 +8.45,1301.2510986328125 +8.46,1302.550048828125 +8.47,1303.8536376953125 +8.48,1305.156494140625 +8.49,1306.4559326171875 +8.5,1307.7518310546875 +8.51,1309.05908203125 +8.52,1310.3582763671875 +8.53,1311.6517333984375 +8.54,1312.9462890625 +8.55,1314.2432861328125 +8.56,1315.5316162109375 +8.57,1316.8135986328125 +8.58,1318.0972900390625 +8.59,1319.3812255859375 +8.6,1320.6640625 +8.61,1321.952392578125 +8.62,1323.23583984375 +8.63,1324.5277099609375 +8.64,1325.8170166015625 +8.65,1327.09619140625 +8.66,1328.37646484375 +8.67,1329.6600341796875 +8.68,1330.9373779296875 +8.69,1332.2039794921875 +8.7,1333.4666748046875 +8.71,1334.72021484375 +8.72,1335.9771728515625 +8.73,1337.2294921875 +8.74,1338.502197265625 +8.75,1339.7686767578125 +8.76,1341.036376953125 +8.77,1342.3045654296875 +8.78,1343.5657958984375 +8.79,1344.8201904296875 +8.8,1346.0751953125 +8.81,1347.3447265625 +8.82,1348.6065673828125 +8.83,1349.8668212890625 +8.84,1351.116455078125 +8.85,1352.3592529296875 +8.86,1353.5946044921875 +8.87,1354.8402099609375 +8.88,1356.08349609375 +8.89,1357.32080078125 +8.9,1358.555908203125 +8.91,1359.7952880859375 +8.92,1361.0323486328125 +8.93,1362.2723388671875 +8.94,1363.5159912109375 +8.95,1364.7611083984375 +8.96,1366.00390625 +8.97,1367.244384765625 +8.98,1368.4759521484375 +8.99,1369.7164306640625 +9,1370.9598388671875 +9.01,1372.203369140625 +9.02,1373.44091796875 +9.03,1374.6688232421875 +9.04,1375.9041748046875 +9.05,1377.129150390625 +9.06,1378.357177734375 +9.07,1379.5830078125 +9.08,1380.80078125 +9.09,1382.0164794921875 +9.1,1383.2249755859375 +9.11,1384.42919921875 +9.12,1385.6328125 +9.13,1386.836669921875 +9.14,1388.0450439453125 +9.15,1389.249267578125 +9.16,1390.449951171875 +9.17,1391.6561279296875 +9.18,1392.8603515625 +9.19,1394.056640625 +9.2,1395.259033203125 +9.21,1396.4698486328125 +9.22,1397.6756591796875 +9.23,1398.87353515625 +9.24,1400.0672607421875 +9.25,1401.2769775390625 +9.26,1402.4818115234375 +9.27,1403.679443359375 +9.28,1404.8743896484375 +9.29,1406.0631103515625 +9.3,1407.2432861328125 +9.31,1408.4171142578125 +9.32,1409.6114501953125 +9.33,1410.8016357421875 +9.34,1411.9847412109375 +9.35,1413.177978515625 +9.36,1414.370849609375 +9.37,1415.5543212890625 +9.38,1416.7322998046875 +9.39,1417.91748046875 +9.4,1419.0941162109375 +9.41,1420.2705078125 +9.42,1421.43994140625 +9.43,1422.6070556640625 +9.44,1423.7850341796875 +9.45,1424.958251953125 +9.46,1426.13427734375 +9.47,1427.310791015625 +9.48,1428.4923095703125 +9.49,1429.6654052734375 +9.5,1430.8367919921875 +9.51,1431.9990234375 +9.52,1433.1529541015625 +9.53,1434.3179931640625 +9.54,1435.4769287109375 +9.55,1436.650634765625 +9.56,1437.8145751953125 +9.57,1438.97607421875 +9.58,1440.1292724609375 +9.59,1441.289794921875 +9.6,1442.449462890625 +9.61,1443.6082763671875 +9.62,1444.763427734375 +9.63,1445.91552734375 +9.64,1447.0772705078125 +9.65,1448.2337646484375 +9.66,1449.3834228515625 +9.67,1450.5234375 +9.68,1451.670166015625 +9.69,1452.8131103515625 +9.7,1453.968017578125 +9.71,1455.114013671875 +9.72,1456.2503662109375 +9.73,1457.3897705078125 +9.74,1458.5255126953125 +9.75,1459.659912109375 +9.76,1460.793701171875 +9.77,1461.9246826171875 +9.78,1463.0579833984375 +9.79,1464.1839599609375 +9.8,1465.3115234375 +9.81,1466.43994140625 +9.82,1467.570068359375 +9.83,1468.697998046875 +9.84,1469.81640625 +9.85,1470.932861328125 +9.86,1472.0443115234375 +9.87,1473.1590576171875 +9.88,1474.270263671875 +9.89,1475.391357421875 +9.9,1476.5037841796875 +9.91,1477.61572265625 +9.92,1478.72119140625 +9.93,1479.8306884765625 +9.94,1480.946533203125 +9.95,1482.0582275390625 +9.96,1483.1732177734375 +9.97,1484.2802734375 +9.98,1485.378662109375 +9.99,1486.4781494140625 +10,1487.5772705078125 +10.01,1488.673095703125 +10.02,1489.7596435546875 +10.03,1490.870361328125 +10.04,1491.9822998046875 +10.05,1493.0855712890625 +10.06,1494.18408203125 +10.07,1495.282958984375 +10.08,1496.3807373046875 +10.09,1497.4774169921875 +10.1,1498.57763671875 +10.11,1499.6751708984375 +10.12,1500.76953125 +10.13,1501.8583984375 +10.14,1502.9454345703125 +10.15,1504.0360107421875 +10.16,1505.118896484375 +10.17,1506.2149658203125 +10.18,1507.3033447265625 +10.19,1508.38623046875 +10.2,1509.460693359375 +10.21,1510.541748046875 +10.22,1511.61376953125 +10.23,1512.6907958984375 +10.24,1513.76025390625 +10.25,1514.83544921875 +10.26,1515.90380859375 +10.27,1516.9810791015625 +10.28,1518.05224609375 +10.29,1519.1187744140625 +10.3,1520.192626953125 +10.31,1521.2657470703125 +10.32,1522.3326416015625 +10.33,1523.3973388671875 +10.34,1524.4537353515625 +10.35,1525.5115966796875 +10.36,1526.5709228515625 +10.37,1527.6309814453125 +10.38,1528.6859130859375 +10.39,1529.73779296875 +10.4,1530.7896728515625 +10.41,1531.8349609375 +10.42,1532.89892578125 +10.43,1533.962890625 +10.44,1535.0245361328125 +10.45,1536.0772705078125 +10.46,1537.1248779296875 +10.47,1538.172607421875 +10.48,1539.22412109375 +10.49,1540.2711181640625 +10.5,1541.319091796875 +10.51,1542.3641357421875 +10.52,1543.4034423828125 +10.53,1544.447998046875 +10.54,1545.496337890625 +10.55,1546.5374755859375 +10.56,1547.5772705078125 +10.57,1548.61572265625 +10.58,1549.6483154296875 +10.59,1550.67822265625 +10.6,1551.7000732421875 +10.61,1552.7259521484375 +10.62,1553.7528076171875 +10.63,1554.780029296875 +10.64,1555.8111572265625 +10.65,1556.843994140625 +10.66,1557.8770751953125 +10.67,1558.9022216796875 +10.68,1559.93212890625 +10.69,1560.964599609375 +10.7,1561.9912109375 +10.71,1563.0159912109375 +10.72,1564.037353515625 +10.73,1565.065673828125 +10.74,1566.08837890625 +10.75,1567.1060791015625 +10.76,1568.1190185546875 +10.77,1569.1300048828125 +10.78,1570.134765625 +10.79,1571.1444091796875 +10.8,1572.153564453125 +10.81,1573.155029296875 +10.82,1574.1591796875 +10.83,1575.1666259765625 +10.84,1576.1663818359375 +10.85,1577.162109375 +10.86,1578.1568603515625 +10.87,1579.1512451171875 +10.88,1580.1380615234375 +10.89,1581.1224365234375 +10.9,1582.11474609375 +10.91,1583.099365234375 +10.92,1584.0904541015625 +10.93,1585.0911865234375 +10.94,1586.0855712890625 +10.95,1587.08056640625 +10.96,1588.0723876953125 +10.97,1589.05712890625 +10.98,1590.04931640625 +10.99,1591.032958984375 +11,1592.0089111328125 +11.01,1592.9853515625 +11.02,1593.9732666015625 +11.03,1594.958740234375 +11.04,1595.935546875 +11.05,1596.9217529296875 +11.06,1597.9053955078125 +11.07,1598.881103515625 +11.08,1599.8631591796875 +11.09,1600.83642578125 +11.1,1601.804931640625 +11.11,1602.7862548828125 +11.12,1603.7628173828125 +11.13,1604.74267578125 +11.14,1605.716796875 +11.15,1606.692626953125 +11.16,1607.6619873046875 +11.17,1608.628173828125 +11.18,1609.587890625 +11.19,1610.5411376953125 +11.2,1611.5185546875 +11.21,1612.4886474609375 +11.22,1613.4512939453125 +11.23,1614.4124755859375 +11.24,1615.3656005859375 +11.25,1616.3104248046875 +11.26,1617.258056640625 +11.27,1618.2127685546875 +11.28,1619.1634521484375 +11.29,1620.1177978515625 +11.3,1621.0672607421875 +11.31,1622.023193359375 +11.32,1622.9725341796875 +11.33,1623.91259765625 +11.34,1624.863525390625 +11.35,1625.8138427734375 +11.36,1626.76025390625 +11.37,1627.7149658203125 +11.38,1628.664794921875 +11.39,1629.6053466796875 +11.4,1630.5516357421875 +11.41,1631.489501953125 +11.42,1632.443115234375 +11.43,1633.38916015625 +11.44,1634.330322265625 +11.45,1635.2646484375 +11.46,1636.2059326171875 +11.47,1637.1414794921875 +11.48,1638.0694580078125 +11.49,1638.9879150390625 +11.5,1639.901611328125 +11.51,1640.8197021484375 +11.52,1641.73193359375 +11.53,1642.6605224609375 +11.54,1643.593505859375 +11.55,1644.5169677734375 +11.56,1645.4346923828125 +11.57,1646.3438720703125 +11.58,1647.2445068359375 +11.59,1648.151611328125 +11.6,1649.0576171875 +11.61,1649.9664306640625 +11.62,1650.8675537109375 +11.63,1651.7703857421875 +11.64,1652.6922607421875 +11.65,1653.612060546875 +11.66,1654.5223388671875 +11.67,1655.4334716796875 +11.68,1656.343505859375 +11.69,1657.250732421875 +11.7,1658.156982421875 +11.71,1659.0535888671875 +11.72,1659.9609375 +11.73,1660.8614501953125 +11.74,1661.7630615234375 +11.75,1662.6627197265625 +11.76,1663.5537109375 +11.77,1664.4368896484375 +11.78,1665.3115234375 +11.79,1666.185302734375 +11.8,1667.059326171875 +11.81,1667.9573974609375 +11.82,1668.8536376953125 +11.83,1669.7470703125 +11.84,1670.631591796875 +11.85,1671.512451171875 +11.86,1672.3924560546875 +11.87,1673.269775390625 +11.88,1674.140380859375 +11.89,1675.021484375 +11.9,1675.9061279296875 +11.91,1676.785888671875 +11.92,1677.6578369140625 +11.93,1678.53125 +11.94,1679.3958740234375 +11.95,1680.27734375 +11.96,1681.1500244140625 +11.97,1682.0240478515625 +11.98,1682.893310546875 +11.99,1683.76318359375 +12,1684.633544921875 +12.01,1685.4951171875 +12.02,1686.357177734375 +12.03,1687.231201171875 +12.04,1688.1068115234375 +12.05,1688.9765625 +12.06,1689.8375244140625 +12.07,1690.6949462890625 +12.08,1691.5487060546875 +12.09,1692.4010009765625 +12.1,1693.2728271484375 +12.11,1694.1368408203125 +12.12,1694.991943359375 +12.13,1695.837158203125 +12.14,1696.6842041015625 +12.15,1697.53515625 +12.16,1698.387939453125 +12.17,1699.235107421875 +12.18,1700.080810546875 +12.19,1700.9219970703125 +12.2,1701.7747802734375 +12.21,1702.620849609375 +12.22,1703.461181640625 +12.23,1704.299072265625 +12.24,1705.1466064453125 +12.25,1705.9906005859375 +12.26,1706.8333740234375 +12.27,1707.668212890625 +12.28,1708.495361328125 +12.29,1709.323486328125 +12.3,1710.1580810546875 +12.31,1710.9837646484375 +12.32,1711.821533203125 +12.33,1712.670166015625 +12.34,1713.5108642578125 +12.35,1714.34375 +12.36,1715.1700439453125 +12.37,1715.9908447265625 +12.38,1716.8072509765625 +12.39,1717.6158447265625 +12.4,1718.46337890625 +12.41,1719.30419921875 +12.42,1720.135986328125 +12.43,1720.9700927734375 +12.44,1721.79638671875 +12.45,1722.6148681640625 +12.46,1723.4425048828125 +12.47,1724.2623291015625 +12.48,1725.08447265625 +12.49,1725.9033203125 +12.5,1726.715576171875 +12.51,1727.5201416015625 +12.52,1728.3226318359375 +12.53,1729.1175537109375 +12.54,1729.9239501953125 +12.55,1730.7227783203125 +12.56,1731.5150146484375 +12.57,1732.3155517578125 +12.58,1733.1278076171875 +12.59,1733.9312744140625 +12.6,1734.73046875 +12.61,1735.527587890625 +12.62,1736.3182373046875 +12.63,1737.1138916015625 +12.64,1737.9052734375 +12.65,1738.686767578125 +12.66,1739.486083984375 +12.67,1740.285888671875 +12.68,1741.0767822265625 +12.69,1741.8740234375 +12.7,1742.662353515625 +12.71,1743.4488525390625 +12.72,1744.2322998046875 +12.73,1745.0140380859375 +12.74,1745.8126220703125 +12.75,1746.6058349609375 +12.76,1747.3936767578125 +12.77,1748.1787109375 +12.78,1748.9549560546875 +12.79,1749.7305908203125 +12.8,1750.50341796875 +12.81,1751.29931640625 +12.82,1752.09326171875 +12.83,1752.8785400390625 +12.84,1753.660888671875 +12.85,1754.4415283203125 +12.86,1755.2169189453125 +12.87,1755.98583984375 +12.88,1756.7520751953125 +12.89,1757.511962890625 +12.9,1758.261962890625 +12.91,1759.05810546875 +12.92,1759.8585205078125 +12.93,1760.6500244140625 +12.94,1761.4349365234375 +12.95,1762.2110595703125 +12.96,1762.983154296875 +12.97,1763.759765625 +12.98,1764.53466796875 +12.99,1765.3067626953125 +13,1766.079833984375 +13.01,1766.848876953125 +13.02,1767.6163330078125 +13.03,1768.3919677734375 +13.04,1769.1611328125 +13.05,1769.9228515625 +13.06,1770.685546875 +13.07,1771.439453125 +13.08,1772.1884765625 +13.09,1772.9287109375 +13.1,1773.66650390625 +13.11,1774.40185546875 +13.12,1775.128662109375 +13.13,1775.868896484375 +13.14,1776.609130859375 +13.15,1777.35302734375 +13.16,1778.095703125 +13.17,1778.845703125 +13.18,1779.5992431640625 +13.19,1780.3441162109375 +13.2,1781.0804443359375 +13.21,1781.8228759765625 +13.22,1782.556640625 +13.23,1783.2806396484375 +13.24,1784.008544921875 +13.25,1784.734130859375 +13.26,1785.4537353515625 +13.27,1786.1959228515625 +13.28,1786.9281005859375 +13.29,1787.655517578125 +13.3,1788.3818359375 +13.31,1789.1207275390625 +13.32,1789.8560791015625 +13.33,1790.59033203125 +13.34,1791.321044921875 +13.35,1792.043212890625 +13.36,1792.7630615234375 +13.37,1793.4781494140625 +13.38,1794.19482421875 +13.39,1794.9017333984375 +13.4,1795.6103515625 +13.41,1796.310546875 +13.42,1797.014892578125 +13.43,1797.7362060546875 +13.44,1798.4490966796875 +13.45,1799.1522216796875 +13.46,1799.8646240234375 +13.47,1800.568603515625 +13.48,1801.2679443359375 +13.49,1801.9805908203125 +13.5,1802.6898193359375 +13.51,1803.3995361328125 +13.52,1804.107177734375 +13.53,1804.8089599609375 +13.54,1805.5035400390625 +13.55,1806.203857421875 +13.56,1806.8970947265625 +13.57,1807.5858154296875 +13.58,1808.2816162109375 +13.59,1808.9832763671875 +13.6,1809.677734375 +13.61,1810.3638916015625 +13.62,1811.048095703125 +13.63,1811.7279052734375 +13.64,1812.4254150390625 +13.65,1813.1158447265625 +13.66,1813.804443359375 +13.67,1814.4937744140625 +13.68,1815.191650390625 +13.69,1815.8902587890625 +13.7,1816.5804443359375 +13.71,1817.275390625 +13.72,1817.9605712890625 +13.73,1818.6492919921875 +13.74,1819.3282470703125 +13.75,1820.0054931640625 +13.76,1820.695556640625 +13.77,1821.3785400390625 +13.78,1822.05712890625 +13.79,1822.7313232421875 +13.8,1823.402587890625 +13.81,1824.0841064453125 +13.82,1824.760009765625 +13.83,1825.42626953125 +13.84,1826.09228515625 +13.85,1826.7540283203125 +13.86,1827.418212890625 +13.87,1828.0914306640625 +13.88,1828.7564697265625 +13.89,1829.42529296875 +13.9,1830.1058349609375 +13.91,1830.794189453125 +13.92,1831.47412109375 +13.93,1832.15234375 +13.94,1832.822265625 +13.95,1833.4840087890625 +13.96,1834.149658203125 +13.97,1834.8057861328125 +13.98,1835.4537353515625 +13.99,1836.09619140625 +14,1836.7523193359375 +14.01,1837.406982421875 +14.02,1838.05615234375 +14.03,1838.703857421875 +14.04,1839.364013671875 +14.05,1840.015869140625 +14.06,1840.6650390625 +14.07,1841.318359375 +14.08,1841.9744873046875 +14.09,1842.649658203125 +14.1,1843.315185546875 +14.11,1843.9737548828125 +14.12,1844.6337890625 +14.13,1845.2938232421875 +14.14,1845.9442138671875 +14.15,1846.58642578125 +14.16,1847.221923828125 +14.17,1847.8563232421875 +14.18,1848.4923095703125 +14.19,1849.1409912109375 +14.2,1849.782958984375 +14.21,1850.4154052734375 +14.22,1851.0535888671875 +14.23,1851.692138671875 +14.24,1852.342041015625 +14.25,1852.986572265625 +14.26,1853.6243896484375 +14.27,1854.2568359375 +14.28,1854.88134765625 +14.29,1855.507568359375 +14.3,1856.1356201171875 +14.31,1856.757080078125 +14.32,1857.3720703125 +14.33,1857.9832763671875 +14.34,1858.6217041015625 +14.35,1859.2548828125 +14.36,1859.88427734375 +14.37,1860.5140380859375 +14.38,1861.142822265625 +14.39,1861.7635498046875 +14.4,1862.380615234375 +14.41,1862.996826171875 +14.42,1863.617919921875 +14.43,1864.236572265625 +14.44,1864.8515625 +14.45,1865.457275390625 +14.46,1866.0594482421875 +14.47,1866.6566162109375 +14.48,1867.2630615234375 +14.49,1867.8760986328125 +14.5,1868.4810791015625 +14.51,1869.08251953125 +14.52,1869.683349609375 +14.53,1870.2747802734375 +14.54,1870.8773193359375 +14.55,1871.477783203125 +14.56,1872.07470703125 +14.57,1872.662353515625 +14.58,1873.2596435546875 +14.59,1873.8564453125 +14.6,1874.44970703125 +14.61,1875.03662109375 +14.62,1875.63916015625 +14.63,1876.2352294921875 +14.64,1876.823486328125 +14.65,1877.412841796875 +14.66,1877.992919921875 +14.67,1878.579833984375 +14.68,1879.1722412109375 +14.69,1879.75830078125 +14.7,1880.338134765625 +14.71,1880.932373046875 +14.72,1881.5172119140625 +14.73,1882.103271484375 +14.74,1882.6873779296875 +14.75,1883.2652587890625 +14.76,1883.8369140625 +14.77,1884.4053955078125 +14.78,1884.984130859375 +14.79,1885.5745849609375 +14.8,1886.1646728515625 +14.81,1886.7484130859375 +14.82,1887.3333740234375 +14.83,1887.927001953125 +14.84,1888.5126953125 +14.85,1889.1026611328125 +14.86,1889.6864013671875 +14.87,1890.2623291015625 +14.88,1890.8365478515625 +14.89,1891.41064453125 +14.9,1891.9755859375 +14.91,1892.5404052734375 +14.92,1893.111328125 +14.93,1893.68359375 +14.94,1894.2557373046875 +14.95,1894.8232421875 +14.96,1895.3907470703125 +14.97,1895.948974609375 +14.98,1896.5028076171875 +14.99,1897.0596923828125 +15,1897.6197509765625 +15.01,1898.1844482421875 +15.02,1898.7431640625 +15.03,1899.303466796875 +15.04,1899.8546142578125 +15.05,1900.4012451171875 +15.06,1900.9405517578125 +15.07,1901.473876953125 +15.08,1902.007568359375 +15.09,1902.5570068359375 +15.1,1903.1082763671875 +15.11,1903.655029296875 +15.12,1904.20361328125 +15.13,1904.7540283203125 +15.14,1905.2969970703125 +15.15,1905.844970703125 +15.16,1906.3931884765625 +15.17,1906.935546875 +15.18,1907.489013671875 +15.19,1908.0538330078125 +15.2,1908.61572265625 +15.21,1909.1793212890625 +15.22,1909.733642578125 +15.23,1910.2835693359375 +15.24,1910.8369140625 +15.25,1911.3875732421875 +15.26,1911.9306640625 +15.27,1912.4725341796875 +15.28,1913.0069580078125 +15.29,1913.546630859375 +15.3,1914.0869140625 +15.31,1914.622802734375 +15.32,1915.1512451171875 +15.33,1915.68994140625 +15.34,1916.219482421875 +15.35,1916.74169921875 +15.36,1917.267822265625 +15.37,1917.7882080078125 +15.38,1918.3204345703125 +15.39,1918.851806640625 +15.4,1919.3741455078125 +15.41,1919.89404296875 +15.42,1920.4097900390625 +15.43,1920.919921875 +15.44,1921.4212646484375 +15.45,1921.9283447265625 +15.46,1922.439453125 +15.47,1922.9515380859375 +15.48,1923.4693603515625 +15.49,1923.97998046875 +15.5,1924.4898681640625 +15.51,1924.994140625 +15.52,1925.492919921875 +15.53,1926.0107421875 +15.54,1926.531005859375 +15.55,1927.0587158203125 +15.56,1927.577392578125 +15.57,1928.092041015625 +15.58,1928.5977783203125 +15.59,1929.0947265625 +15.6,1929.589599609375 +15.61,1930.0821533203125 +15.62,1930.5809326171875 +15.63,1931.075927734375 +15.64,1931.5655517578125 +15.65,1932.0662841796875 +15.66,1932.5765380859375 +15.67,1933.0811767578125 +15.68,1933.576904296875 +15.69,1934.072265625 +15.7,1934.560546875 +15.71,1935.041748046875 +15.72,1935.5159912109375 +15.73,1936.005126953125 +15.74,1936.4990234375 +15.75,1936.9942626953125 +15.76,1937.4991455078125 +15.77,1937.9951171875 +15.78,1938.4891357421875 +15.79,1938.9793701171875 +15.8,1939.4608154296875 +15.81,1939.9471435546875 +15.82,1940.445068359375 +15.83,1940.9359130859375 +15.84,1941.426513671875 +15.85,1941.9117431640625 +15.86,1942.39501953125 +15.87,1942.87646484375 +15.88,1943.3663330078125 +15.89,1943.843994140625 +15.9,1944.324951171875 +15.91,1944.7989501953125 +15.92,1945.2659912109375 +15.93,1945.7296142578125 +15.94,1946.19677734375 +15.95,1946.6571044921875 +15.96,1947.129638671875 +15.97,1947.5986328125 +15.98,1948.072998046875 +15.99,1948.5404052734375 +16,1949.0078125 +16.01,1949.4840087890625 +16.02,1949.960205078125 +16.03,1950.4278564453125 +16.04,1950.8868408203125 +16.05,1951.3460693359375 +16.06,1951.7967529296875 +16.07,1952.2388916015625 +16.08,1952.6744384765625 +16.09,1953.1209716796875 +16.1,1953.5712890625 +16.11,1954.01318359375 +16.12,1954.45556640625 +16.13,1954.8983154296875 +16.14,1955.3397216796875 +16.15,1955.7799072265625 +16.16,1956.21875 +16.17,1956.65283203125 +16.18,1957.0784912109375 +16.19,1957.506591796875 +16.2,1957.9532470703125 +16.21,1958.40771484375 +16.22,1958.8553466796875 +16.23,1959.2962646484375 +16.24,1959.7305908203125 +16.25,1960.1563720703125 +16.26,1960.584716796875 +16.27,1961.011962890625 +16.28,1961.438232421875 +16.29,1961.865234375 +16.3,1962.28564453125 +16.31,1962.69775390625 +16.32,1963.12548828125 +16.33,1963.563232421875 +16.34,1963.992431640625 +16.35,1964.4151611328125 +16.36,1964.8350830078125 +16.37,1965.2520751953125 +16.38,1965.6627197265625 +16.39,1966.081787109375 +16.4,1966.4962158203125 +16.41,1966.91357421875 +16.42,1967.33203125 +16.43,1967.753173828125 +16.44,1968.1661376953125 +16.45,1968.574462890625 +16.46,1968.9764404296875 +16.47,1969.3720703125 +16.48,1969.774658203125 +16.49,1970.1766357421875 +16.5,1970.594970703125 +16.51,1971.0068359375 +16.52,1971.4273681640625 +16.53,1971.8509521484375 +16.54,1972.26611328125 +16.55,1972.6748046875 +16.56,1973.0791015625 +16.57,1973.4808349609375 +16.58,1973.8839111328125 +16.59,1974.2825927734375 +16.6,1974.675048828125 +16.61,1975.0765380859375 +16.62,1975.4698486328125 +16.63,1975.86083984375 +16.64,1976.2437744140625 +16.65,1976.6263427734375 +16.66,1977.0047607421875 +16.67,1977.3809814453125 +16.68,1977.7724609375 +16.69,1978.1636962890625 +16.7,1978.5487060546875 +16.71,1978.9256591796875 +16.72,1979.3043212890625 +16.73,1979.692626953125 +16.74,1980.0787353515625 +16.75,1980.4605712890625 +16.76,1980.8560791015625 +16.77,1981.251220703125 +16.78,1981.65185546875 +16.79,1982.05419921875 +16.8,1982.4541015625 +16.81,1982.851806640625 +16.82,1983.2471923828125 +16.83,1983.63427734375 +16.84,1984.015380859375 +16.85,1984.3983154296875 +16.86,1984.7850341796875 +16.87,1985.167724609375 +16.88,1985.5462646484375 +16.89,1985.9228515625 +16.9,1986.2913818359375 +16.91,1986.6600341796875 +16.92,1987.0267333984375 +16.93,1987.4014892578125 +16.94,1987.7703857421875 +16.95,1988.1453857421875 +16.96,1988.5123291015625 +16.97,1988.871337890625 +16.98,1989.2347412109375 +16.99,1989.6104736328125 +17,1989.978271484375 +17.01,1990.3380126953125 +17.02,1990.7021484375 +17.03,1991.058349609375 +17.04,1991.412841796875 +17.05,1991.7718505859375 +17.06,1992.1414794921875 +17.07,1992.503173828125 +17.08,1992.85693359375 +17.09,1993.2193603515625 +17.1,1993.59033203125 +17.11,1993.955322265625 +17.12,1994.314453125 +17.13,1994.665771484375 +17.14,1995.021728515625 +17.15,1995.3739013671875 +17.16,1995.71826171875 +17.17,1996.054931640625 +17.18,1996.4049072265625 +17.19,1996.7470703125 +17.2,1997.0982666015625 +17.21,1997.447998046875 +17.22,1997.7962646484375 +17.23,1998.1534423828125 +17.24,1998.5048828125 +17.25,1998.8548583984375 +17.26,1999.2012939453125 +17.27,1999.5399169921875 +17.28,1999.8795166015625 +17.29,2000.215576171875 +17.3,2000.55029296875 +17.31,2000.8817138671875 +17.32,2001.209716796875 +17.33,2001.5302734375 +17.34,2001.84326171875 +17.35,2002.1488037109375 +17.36,2002.4642333984375 +17.37,2002.78515625 +17.38,2003.1201171875 +17.39,2003.4560546875 +17.4,2003.79736328125 +17.41,2004.148193359375 +17.42,2004.4912109375 +17.43,2004.8284912109375 +17.44,2005.1580810546875 +17.45,2005.480224609375 +17.46,2005.8056640625 +17.47,2006.1300048828125 +17.48,2006.4512939453125 +17.49,2006.7650146484375 +17.5,2007.080078125 +17.51,2007.396484375 +17.52,2007.7076416015625 +17.53,2008.02685546875 +17.54,2008.33203125 +17.55,2008.6297607421875 +17.56,2008.9202880859375 +17.57,2009.2103271484375 +17.58,2009.5087890625 +17.59,2009.8154296875 +17.6,2010.11474609375 +17.61,2010.40673828125 +17.62,2010.6937255859375 +17.63,2011.005126953125 +17.64,2011.3135986328125 +17.65,2011.6259765625 +17.66,2011.9332275390625 +17.67,2012.2398681640625 +17.68,2012.5504150390625 +17.69,2012.853515625 +17.7,2013.1514892578125 +17.71,2013.4444580078125 +17.72,2013.7484130859375 +17.73,2014.0496826171875 +17.74,2014.3436279296875 +17.75,2014.64404296875 +17.76,2014.9600830078125 +17.77,2015.2685546875 +17.78,2015.578857421875 +17.79,2015.8817138671875 +17.8,2016.1817626953125 +17.81,2016.4837646484375 +17.82,2016.7806396484375 +17.83,2017.0703125 +17.84,2017.3505859375 +17.85,2017.623779296875 +17.86,2017.9130859375 +17.87,2018.1953125 +17.88,2018.4703369140625 +17.89,2018.7384033203125 +17.9,2018.99951171875 +17.91,2019.2584228515625 +17.92,2019.5152587890625 +17.93,2019.7841796875 +17.94,2020.046142578125 +17.95,2020.3011474609375 +17.96,2020.561279296875 +17.97,2020.8192138671875 +17.98,2021.0704345703125 +17.99,2021.3172607421875 +18,2021.5572509765625 +18.01,2021.7906494140625 +18.02,2022.017333984375 +18.03,2022.2764892578125 +18.04,2022.4993896484375 +18.05,2022.7452392578125 +18.06,2022.994140625 +18.07,2023.2412109375 +18.08,2023.498779296875 +18.09,2023.74951171875 +18.1,2023.9932861328125 +18.11,2024.2379150390625 +18.12,2024.483154296875 +18.13,2024.7342529296875 +18.14,2024.978515625 +18.15,2025.2159423828125 +18.16,2025.4490966796875 +18.17,2025.688232421875 +18.18,2025.9207763671875 +18.19,2026.1619873046875 +18.2,2026.396484375 +18.21,2026.6573486328125 +18.22,2026.9112548828125 +18.23,2027.165771484375 +18.24,2027.4158935546875 +18.25,2027.684814453125 +18.26,2027.9490966796875 +18.27,2028.2064208984375 +18.28,2028.4593505859375 +18.29,2028.7156982421875 +18.3,2028.9779052734375 +18.31,2029.2381591796875 +18.32,2029.49658203125 +18.33,2029.748046875 +18.34,2029.995361328125 +18.35,2030.2410888671875 +18.36,2030.4801025390625 +18.37,2030.71240234375 +18.38,2030.9486083984375 +18.39,2031.1961669921875 +18.4,2031.439697265625 +18.41,2031.673828125 +18.42,2031.9041748046875 +18.43,2032.1331787109375 +18.44,2032.3555908203125 +18.45,2032.58203125 +18.46,2032.8204345703125 +18.47,2033.0338134765625 +18.48,2033.2568359375 +18.49,2033.473388671875 +18.5,2033.686279296875 +18.51,2033.8980712890625 +18.52,2034.1063232421875 +18.53,2034.308349609375 +18.54,2034.5042724609375 +18.55,2034.694091796875 +18.56,2034.888671875 +18.57,2035.0853271484375 +18.58,2035.3109130859375 +18.59,2035.530029296875 +18.6,2035.7454833984375 +18.61,2035.9791259765625 +18.62,2036.203369140625 +18.63,2036.3992919921875 +18.64,2036.611083984375 +18.65,2036.8165283203125 +18.66,2037.0157470703125 +18.67,2037.208984375 +18.68,2037.4044189453125 +18.69,2037.5965576171875 +18.7,2037.7965087890625 +18.71,2037.995849609375 +18.72,2038.2081298828125 +18.73,2038.4141845703125 +18.74,2038.6142578125 +18.75,2038.808349609375 +18.76,2038.9967041015625 +18.77,2039.1795654296875 +18.78,2039.3570556640625 +18.79,2039.542236328125 +18.8,2039.732177734375 +18.81,2039.916748046875 +18.82,2040.0958251953125 +18.83,2040.2646484375 +18.84,2040.4334716796875 +18.85,2040.60986328125 +18.86,2040.7811279296875 +18.87,2040.9674072265625 +18.88,2041.158447265625 +18.89,2041.3416748046875 +18.9,2041.522216796875 +18.91,2041.695068359375 +18.92,2041.8656005859375 +18.93,2042.03125 +18.94,2042.1968994140625 +18.95,2042.3626708984375 +18.96,2042.535888671875 +18.97,2042.72119140625 +18.98,2042.9085693359375 +18.99,2043.083740234375 +19,2043.2540283203125 +19.01,2043.4195556640625 +19.02,2043.587646484375 +19.03,2043.760498046875 +19.04,2043.9429931640625 +19.05,2044.1278076171875 +19.06,2044.3101806640625 +19.07,2044.4876708984375 +19.08,2044.66748046875 +19.09,2044.842529296875 +19.1,2045.0177001953125 +19.11,2045.1881103515625 +19.12,2045.3492431640625 +19.13,2045.501220703125 +19.14,2045.646484375 +19.15,2045.78759765625 +19.16,2045.9268798828125 +19.17,2046.0621337890625 +19.18,2046.1932373046875 +19.19,2046.3204345703125 +19.2,2046.4482421875 +19.21,2046.5814208984375 +19.22,2046.7176513671875 +19.23,2046.849853515625 +19.24,2046.994384765625 +19.25,2047.13720703125 +19.26,2047.27587890625 +19.27,2047.4267578125 +19.28,2047.564208984375 +19.29,2047.70703125 +19.3,2047.85498046875 +19.31,2047.9989013671875 +19.32,2048.13427734375 +19.33,2048.265625 +19.34,2048.393310546875 +19.35,2048.52197265625 +19.36,2048.6513671875 +19.37,2048.79296875 +19.38,2048.9306640625 +19.39,2049.071533203125 +19.4,2049.20849609375 +19.41,2049.34619140625 +19.42,2049.480224609375 +19.43,2049.614990234375 +19.44,2049.741455078125 +19.45,2049.86865234375 +19.46,2049.9990234375 +19.47,2050.128173828125 +19.48,2050.253662109375 +19.49,2050.37548828125 +19.5,2050.49609375 +19.51,2050.61328125 +19.52,2050.749755859375 +19.53,2050.8916015625 +19.54,2051.02978515625 +19.55,2051.164306640625 +19.56,2051.295166015625 +19.57,2051.41357421875 +19.58,2051.5283203125 +19.59,2051.64892578125 +19.6,2051.77734375 +19.61,2051.904541015625 +19.62,2052.0283203125 +19.63,2052.1484375 +19.64,2052.25634765625 +19.65,2052.36083984375 +19.66,2052.462158203125 +19.67,2052.560546875 +19.68,2052.655517578125 +19.69,2052.74755859375 +19.7,2052.836669921875 +19.71,2052.9296875 +19.72,2053.02197265625 +19.73,2053.11328125 +19.74,2053.20166015625 +19.75,2053.30322265625 +19.76,2053.40380859375 +19.77,2053.510498046875 +19.78,2053.609619140625 +19.79,2053.705810546875 +19.8,2053.798828125 +19.81,2053.888916015625 +19.82,2053.976318359375 +19.83,2054.060791015625 +19.84,2054.147216796875 +19.85,2054.237548828125 +19.86,2054.338623046875 +19.87,2054.436767578125 +19.88,2054.531982421875 +19.89,2054.631103515625 +19.9,2054.727294921875 +19.91,2054.82080078125 +19.92,2054.911376953125 +19.93,2054.999267578125 +19.94,2055.084228515625 +19.95,2055.166748046875 +19.96,2055.241943359375 +19.97,2055.32373046875 +19.98,2055.393798828125 +19.99,2055.46142578125 +20,2055.53564453125 +20.01,2055.61865234375 +20.02,2055.69677734375 +20.03,2055.772216796875 +20.04,2055.845458984375 +20.05,2055.91845703125 +20.06,2055.997802734375 +20.07,2056.07470703125 +20.08,2056.14697265625 +20.09,2056.216796875 +20.1,2056.2841796875 +20.11,2056.3515625 +20.12,2056.42333984375 +20.13,2056.49267578125 +20.14,2056.559814453125 +20.15,2056.62451171875 +20.16,2056.68701171875 +20.17,2056.75390625 +20.18,2056.81884765625 +20.19,2056.876953125 +20.2,2056.937255859375 +20.21,2056.990966796875 +20.22,2057.047119140625 +20.23,2057.101318359375 +20.24,2057.1533203125 +20.25,2057.203369140625 +20.26,2057.2490234375 +20.27,2057.295166015625 +20.28,2057.357177734375 +20.29,2057.4169921875 +20.3,2057.4794921875 +20.31,2057.53955078125 +20.32,2057.61572265625 +20.33,2057.6943359375 +20.34,2057.7705078125 +20.35,2057.844482421875 +20.36,2057.916259765625 +20.37,2057.98583984375 +20.38,2058.048828125 +20.39,2058.10302734375 +20.4,2058.15087890625 +20.41,2058.197021484375 +20.42,2058.2412109375 +20.43,2058.283447265625 +20.44,2058.308349609375 +20.45,2058.33154296875 +20.46,2058.353271484375 +20.47,2058.3935546875 +20.48,2058.432373046875 +20.49,2058.4716796875 +20.5,2058.5068359375 +20.51,2058.5361328125 +20.52,2058.55029296875 +20.53,2058.57666015625 +20.54,2058.601318359375 +20.55,2058.62451171875 +20.56,2058.646240234375 +20.57,2058.6533203125 +20.58,2058.6591796875 +20.59,2058.67724609375 +20.6,2058.69384765625 +20.61,2058.7158203125 +20.62,2058.736572265625 +20.63,2058.76025390625 +20.64,2058.782470703125 +20.65,2058.799072265625 +20.66,2058.81884765625 +20.67,2058.837158203125 +20.68,2058.854248046875 +20.69,2058.870361328125 +20.7,2058.896240234375 +20.71,2058.8984375 +20.72,2058.8994140625 +20.73,2058.8994140625 +20.74,2058.9140625 +20.75,2058.927490234375 +20.76,2058.93994140625 +20.77,2058.951171875 +20.78,2058.963623046875 +20.79,2058.97265625 +20.8,2058.98291015625 +20.81,2058.9921875 +20.82,2058.998046875 +20.83,2059.01171875 +20.84,2059.0244140625 +20.85,2059.01611328125 +20.86,2059.007080078125 +20.87,2058.99462890625 +20.88,2058.954833984375 +20.89,2058.769775390625 +20.9,2058.137939453125 +20.91,2057.27001953125 +20.92,2056.1728515625 +20.93,2055.071044921875 +20.94,2053.763427734375 +20.95,2052.260986328125 +20.96,2050.477783203125 +20.97,2048.713623046875 +20.98,2046.96826171875 +20.99,2045.24169921875 +21,2043.533935546875 +21.01,2042.13671875 +21.02,2042.214111328125 +21.03,2042.3524169921875 +21.04,2042.49560546875 +21.05,2042.6390380859375 +21.06,2042.7828369140625 +21.07,2042.9290771484375 +21.08,2043.0753173828125 +21.09,2043.21923828125 +21.1,2043.3631591796875 +21.11,2043.50927734375 +21.12,2043.6553955078125 +21.13,2043.8017578125 +21.14,2043.947998046875 +21.15,2044.0941162109375 +21.16,2044.240234375 +21.17,2044.3751220703125 +21.18,2044.5211181640625 +21.19,2044.6624755859375 +21.2,2044.8037109375 +21.21,2044.9447021484375 +21.22,2045.078857421875 +21.23,2045.219482421875 +21.24,2045.373291015625 +21.25,2045.5133056640625 +21.26,2045.6663818359375 +21.27,2045.8189697265625 +21.28,2045.9710693359375 +21.29,2046.1181640625 +21.3,2046.2647705078125 +21.31,2046.410888671875 +21.32,2046.5408935546875 +21.33,2046.66162109375 +21.34,2046.781982421875 +21.35,2046.8955078125 +21.36,2047.0086669921875 +21.37,2047.1148681640625 +21.38,2047.2208251953125 +21.39,2047.3331298828125 +21.4,2047.4295654296875 +21.41,2047.5302734375 +21.42,2047.641845703125 +21.43,2047.7574462890625 +21.44,2047.87255859375 +21.45,2047.9849853515625 +21.46,2048.096923828125 +21.47,2048.203857421875 +21.48,2048.301513671875 +21.49,2048.398681640625 +21.5,2048.49560546875 +21.51,2048.592041015625 +21.52,2048.67041015625 +21.53,2048.74609375 +21.54,2048.823974609375 +21.55,2048.8994140625 +21.56,2048.9677734375 +21.57,2049.035888671875 +21.58,2049.101806640625 +21.59,2049.16748046875 +21.6,2049.228515625 +21.61,2049.289306640625 +21.62,2049.3544921875 +21.63,2049.414794921875 +21.64,2049.47509765625 +21.65,2049.53515625 +21.66,2049.581787109375 +21.67,2049.6416015625 +21.68,2049.710205078125 +21.69,2049.7783203125 +21.7,2049.843994140625 +21.71,2049.9091796875 +21.72,2049.97412109375 +21.73,2050.041015625 +21.74,2050.112060546875 +21.75,2050.182373046875 +21.76,2050.25244140625 +21.77,2050.3154296875 +21.78,2050.384765625 +21.79,2050.460205078125 +21.8,2050.528564453125 +21.81,2050.596435546875 +21.82,2050.670654296875 +21.83,2050.72216796875 +21.84,2050.79541015625 +21.85,2050.8681640625 +21.86,2050.94921875 +21.87,2051.04541015625 +21.88,2051.14501953125 +21.89,2051.243896484375 +21.9,2051.341552734375 +21.91,2051.4384765625 +21.92,2051.53466796875 +21.93,2051.6298828125 +21.94,2051.72412109375 +21.95,2051.817626953125 +21.96,2051.91015625 +21.97,2052.001953125 +21.98,2052.0927734375 +21.99,2052.171630859375 +22,2052.249755859375 +22.01,2052.326904296875 +22.02,2052.41455078125 +22.03,2052.508056640625 +22.04,2052.6005859375 +22.05,2052.692138671875 +22.06,2052.78271484375 +22.07,2052.872314453125 +22.08,2052.967529296875 +22.09,2053.061767578125 +22.1,2053.155029296875 +22.11,2053.24951171875 +22.12,2053.349609375 +22.13,2053.455322265625 +22.14,2053.552978515625 +22.15,2053.65625 +22.16,2053.75830078125 +22.17,2053.865966796875 +22.18,2053.972412109375 +22.19,2054.07080078125 +22.2,2054.16162109375 +22.21,2054.246826171875 +22.22,2054.330810546875 +22.23,2054.41162109375 +22.24,2054.4736328125 +22.25,2054.552490234375 +22.26,2054.63037109375 +22.27,2054.70947265625 +22.28,2054.80078125 +22.29,2054.890869140625 +22.3,2054.97998046875 +22.31,2055.03466796875 +22.32,2055.121826171875 +22.33,2055.207763671875 +22.34,2055.28369140625 +22.35,2055.3095703125 +22.36,2055.326171875 +22.37,2055.342529296875 +22.38,2055.3583984375 +22.39,2055.382568359375 +22.4,2055.40869140625 +22.41,2055.434326171875 +22.42,2055.4482421875 +22.43,2055.470703125 +22.44,2055.49267578125 +22.45,2055.516357421875 +22.46,2055.53955078125 +22.47,2055.564453125 +22.48,2055.5888671875 +22.49,2055.61279296875 +22.5,2055.6318359375 +22.51,2055.65478515625 +22.52,2055.7060546875 +22.53,2055.765380859375 +22.54,2055.835205078125 +22.55,2055.921875 +22.56,2056.038330078125 +22.57,2056.1953125 +22.58,2056.3505859375 +22.59,2056.50390625 +22.6,2056.655517578125 +22.61,2056.747314453125 +22.62,2056.837646484375 +22.63,2056.984619140625 +22.64,2057.072021484375 +22.65,2057.153564453125 +22.66,2057.2294921875 +22.67,2057.304443359375 +22.68,2057.362548828125 +22.69,2057.412841796875 +22.7,2057.42919921875 +22.71,2057.442626953125 +22.72,2057.440185546875 +22.73,2057.40869140625 +22.74,2057.376953125 +22.75,2057.33203125 +22.76,2057.271484375 +22.77,2057.202392578125 +22.78,2057.12255859375 +22.79,2057.030029296875 +22.8,2056.9091796875 +22.81,2056.78955078125 +22.82,2056.66845703125 +22.83,2056.54833984375 +22.84,2056.425048828125 +22.85,2056.300537109375 +22.86,2056.150390625 +22.87,2055.96826171875 +22.88,2055.787841796875 +22.89,2055.58935546875 +22.9,2055.37939453125 +22.91,2055.151611328125 +22.92,2054.91943359375 +22.93,2054.689697265625 +22.94,2054.45361328125 +22.95,2054.213134765625 +22.96,2053.98193359375 +22.97,2053.753173828125 +22.98,2053.529052734375 +22.99,2053.31396484375 +23,2053.101318359375 +23.01,2052.897705078125 +23.02,2052.6962890625 +23.03,2052.497314453125 +23.04,2052.300537109375 +23.05,2052.099365234375 +23.06,2051.90283203125 +23.07,2051.706298828125 +23.08,2051.510009765625 +23.09,2051.318115234375 +23.1,2051.128662109375 +23.11,2050.94140625 +23.12,2050.75634765625 +23.13,2050.575927734375 +23.14,2050.442138671875 +23.15,2050.329833984375 +23.16,2050.232421875 +23.17,2050.143310546875 +23.18,2050.055419921875 +23.19,2049.97119140625 +23.2,2049.892578125 +23.21,2049.815185546875 +23.22,2049.7392578125 +23.23,2049.664306640625 +23.24,2049.60400390625 +23.25,2049.55126953125 +23.26,2049.499755859375 +23.27,2049.448974609375 +23.28,2049.39697265625 +23.29,2049.34619140625 +23.3,2049.291748046875 +23.31,2049.242919921875 +23.32,2049.195068359375 +23.33,2049.14794921875 +23.34,2049.101806640625 +23.35,2049.06103515625 +23.36,2049.03662109375 +23.37,2049.032958984375 +23.38,2049.060791015625 +23.39,2049.1044921875 +23.4,2049.14794921875 +23.41,2049.19140625 +23.42,2049.219482421875 +23.43,2049.245361328125 +23.44,2049.255615234375 +23.45,2049.263916015625 +23.46,2049.272705078125 +23.47,2049.2529296875 +23.48,2049.2314453125 +23.49,2049.2041015625 +23.5,2049.17724609375 +23.51,2049.100341796875 +23.52,2048.997802734375 +23.53,2048.883544921875 +23.54,2048.770751953125 +23.55,2048.62646484375 +23.56,2048.4794921875 +23.57,2048.3056640625 +23.58,2048.13427734375 +23.59,2047.9493408203125 +23.6,2047.766845703125 +23.61,2047.5867919921875 +23.62,2047.4090576171875 +23.63,2047.22265625 +23.64,2047.0496826171875 +23.65,2046.8680419921875 +23.66,2046.6844482421875 +23.67,2046.4967041015625 +23.68,2046.3092041015625 +23.69,2046.124267578125 +23.7,2045.9375 +23.71,2045.7532958984375 +23.72,2045.5760498046875 +23.73,2045.3968505859375 +23.74,2045.22021484375 +23.75,2045.0504150390625 +23.76,2044.878662109375 +23.77,2044.716064453125 +23.78,2044.502685546875 +23.79,2044.292236328125 +23.8,2044.0625 +23.81,2043.8271484375 +23.82,2043.58837890625 +23.83,2043.3240966796875 +23.84,2043.041259765625 +23.85,2042.7554931640625 +23.86,2042.447021484375 +23.87,2042.140380859375 +23.88,2041.8377685546875 +23.89,2041.539306640625 +23.9,2041.23828125 +23.91,2040.9368896484375 +23.92,2040.6396484375 +23.93,2040.346435546875 +23.94,2040.0108642578125 +23.95,2039.6798095703125 +23.96,2039.3533935546875 +23.97,2039.0269775390625 +23.98,2038.70947265625 +23.99,2038.3919677734375 +24,2038.0614013671875 +24.01,2037.719970703125 +24.02,2037.381103515625 +24.03,2037.0447998046875 +24.04,2036.7132568359375 +24.05,2036.382080078125 +24.06,2036.033447265625 +24.07,2035.6898193359375 +24.08,2035.3466796875 +24.09,2035.008544921875 +24.1,2034.6685791015625 +24.11,2034.3314208984375 +24.12,2033.9947509765625 +24.13,2033.6607666015625 +24.14,2033.331787109375 +24.15,2033.0078125 +24.16,2032.6578369140625 +24.17,2032.3106689453125 +24.18,2031.957763671875 +24.19,2031.6099853515625 +24.2,2031.2630615234375 +24.21,2030.9215087890625 +24.22,2030.573974609375 +24.23,2030.2230224609375 +24.24,2029.88623046875 +24.25,2029.5457763671875 +24.26,2029.20166015625 +24.27,2028.8629150390625 +24.28,2028.5074462890625 +24.29,2028.1529541015625 +24.3,2027.7996826171875 +24.31,2027.4473876953125 +24.32,2027.1005859375 +24.33,2026.75927734375 +24.34,2026.4122314453125 +24.35,2026.0531005859375 +24.36,2025.6842041015625 +24.37,2025.3189697265625 +24.38,2024.9549560546875 +24.39,2024.5968017578125 +24.4,2024.23974609375 +24.41,2023.8818359375 +24.42,2023.5296630859375 +24.43,2023.1788330078125 +24.44,2022.8138427734375 +24.45,2022.4547119140625 +24.46,2022.1014404296875 +24.47,2021.75390625 +24.48,2021.4034423828125 +24.49,2021.041015625 +24.5,2020.6844482421875 +24.51,2020.3359375 +24.52,2020.0087890625 +24.53,2019.709228515625 +24.54,2019.4173583984375 +24.55,2019.130615234375 +24.56,2018.84912109375 +24.57,2018.574951171875 +24.58,2018.310302734375 +24.59,2018.0550537109375 +24.6,2017.8201904296875 +24.61,2017.590087890625 +24.62,2017.3646240234375 +24.63,2017.1502685546875 +24.64,2016.9669189453125 +24.65,2016.8077392578125 +24.66,2016.654541015625 +24.67,2016.505126953125 +24.68,2016.368408203125 +24.69,2016.2265625 +24.7,2016.08837890625 +24.71,2015.947265625 +24.72,2015.8096923828125 +24.73,2015.6824951171875 +24.74,2015.5521240234375 +24.75,2015.42529296875 +24.76,2015.3106689453125 +24.77,2015.199462890625 +24.78,2015.0982666015625 +24.79,2015.009033203125 +24.8,2014.929443359375 +24.81,2014.8572998046875 +24.82,2014.7945556640625 +24.83,2014.74560546875 +24.84,2014.69921875 +24.85,2014.6553955078125 +24.86,2014.614013671875 +24.87,2014.5750732421875 +24.88,2014.5650634765625 +24.89,2014.55712890625 +24.9,2014.5511474609375 +24.91,2014.5472412109375 +24.92,2014.5299072265625 +24.93,2014.5145263671875 +24.94,2014.4990234375 +24.95,2014.485595703125 +24.96,2014.47412109375 +24.97,2014.4468994140625 +24.98,2014.421875 +24.99,2014.3944091796875 +25,2014.3690185546875 +25.01,2014.36767578125 +25.02,2014.3836669921875 +25.03,2014.4188232421875 +25.04,2014.459716796875 +25.05,2014.501953125 +25.06,2014.5673828125 +25.07,2014.61181640625 +25.08,2014.6573486328125 +25.09,2014.6995849609375 +25.1,2014.7098388671875 +25.11,2014.712646484375 +25.12,2014.7081298828125 +25.13,2014.68310546875 +25.14,2014.6533203125 +25.15,2014.603271484375 +25.16,2014.5462646484375 +25.17,2014.500244140625 +25.18,2014.4473876953125 +25.19,2014.394287109375 +25.2,2014.3387451171875 +25.21,2014.2896728515625 +25.22,2014.211669921875 +25.23,2014.1358642578125 +25.24,2014.06005859375 +25.25,2013.986328125 +25.26,2013.9149169921875 +25.27,2013.8455810546875 +25.28,2013.7783203125 +25.29,2013.7132568359375 +25.3,2013.6434326171875 +25.31,2013.5758056640625 +25.32,2013.5101318359375 +25.33,2013.446533203125 +25.34,2013.385009765625 +25.35,2013.325439453125 +25.36,2013.2877197265625 +25.37,2013.2318115234375 +25.38,2013.188720703125 +25.39,2013.1474609375 +25.4,2013.096923828125 +25.41,2013.0458984375 +25.42,2012.9990234375 +25.43,2012.953857421875 +25.44,2012.910400390625 +25.45,2012.866455078125 +25.46,2012.8240966796875 +25.47,2012.78125 +25.48,2012.7401123046875 +25.49,2012.6939697265625 +25.5,2012.61865234375 +25.51,2012.4769287109375 +25.52,2012.2872314453125 +25.53,2012.0675048828125 +25.54,2011.846923828125 +25.55,2011.618896484375 +25.56,2011.387939453125 +25.57,2011.142822265625 +25.58,2010.901611328125 +25.59,2010.6378173828125 +25.6,2010.3780517578125 +25.61,2010.1156005859375 +25.62,2009.84619140625 +25.63,2009.5809326171875 +25.64,2009.3197021484375 +25.65,2009.033935546875 +25.66,2008.7503662109375 +25.67,2008.4556884765625 +25.68,2008.1611328125 +25.69,2007.8687744140625 +25.7,2007.5787353515625 +25.71,2007.271240234375 +25.72,2006.9683837890625 +25.73,2006.670166015625 +25.74,2006.4007568359375 +25.75,2006.1114501953125 +25.76,2005.806884765625 +25.77,2005.507080078125 +25.78,2005.2120361328125 +25.79,2004.897216796875 +25.8,2004.58740234375 +25.81,2004.251708984375 +25.82,2003.921142578125 +25.83,2003.5955810546875 +25.84,2003.292724609375 +25.85,2002.9969482421875 +25.86,2002.7169189453125 +25.87,2002.4415283203125 +25.88,2002.1861572265625 +25.89,2001.937255859375 +25.9,2001.699462890625 +25.91,2001.4967041015625 +25.92,2001.3065185546875 +25.93,2001.1268310546875 +25.94,2000.9815673828125 +25.95,2000.839599609375 +25.96,2000.700927734375 +25.97,2000.5654296875 +25.98,2000.43310546875 +25.99,2000.3038330078125 +26,2000.1776123046875 +26.01,2000.054443359375 +26.02,1999.93212890625 +26.03,1999.799560546875 +26.04,1999.670166015625 +26.05,1999.5416259765625 +26.06,1999.4073486328125 +26.07,1999.232177734375 +26.08,1999.060546875 +26.09,1998.887939453125 +26.1,1998.7188720703125 +26.11,1998.5533447265625 +26.12,1998.3912353515625 +26.13,1998.232421875 +26.14,1998.0770263671875 +26.15,1997.9249267578125 +26.16,1997.776123046875 +26.17,1997.630615234375 +26.18,1997.4884033203125 +26.19,1997.362548828125 +26.2,1997.2264404296875 +26.21,1997.08251953125 +26.22,1996.932861328125 +26.23,1996.7864990234375 +26.24,1996.64111328125 +26.25,1996.492431640625 +26.26,1996.342529296875 +26.27,1996.1849365234375 +26.28,1996.0152587890625 +26.29,1995.8489990234375 +26.3,1995.6839599609375 +26.31,1995.5091552734375 +26.32,1995.3377685546875 +26.33,1995.169921875 +26.34,1995.018798828125 +26.35,1994.870849609375 +26.36,1994.737060546875 +26.37,1994.613037109375 +26.38,1994.496337890625 +26.39,1994.42431640625 +26.4,1994.3746337890625 +26.41,1994.3336181640625 +26.42,1994.3145751953125 +26.43,1994.312744140625 +26.44,1994.3125 +26.45,1994.3138427734375 +26.46,1994.31689453125 +26.47,1994.279541015625 +26.48,1994.244140625 +26.49,1994.193115234375 +26.5,1994.12646484375 +26.51,1994.051025390625 +26.52,1993.9735107421875 +26.53,1993.8873291015625 +26.54,1993.799072265625 +26.55,1993.7132568359375 +26.56,1993.6253662109375 +26.57,1993.5399169921875 +26.58,1993.443603515625 +26.59,1993.3387451171875 +26.6,1993.2364501953125 +26.61,1993.1343994140625 +26.62,1993.01953125 +26.63,1992.88525390625 +26.64,1992.74951171875 +26.65,1992.6165771484375 +26.66,1992.4864501953125 +26.67,1992.3350830078125 +26.68,1992.1866455078125 +26.69,1992.0411376953125 +26.7,1991.9139404296875 +26.71,1991.796142578125 +26.72,1991.6810302734375 +26.73,1991.590576171875 +26.74,1991.50244140625 +26.75,1991.4254150390625 +26.76,1991.3551025390625 +26.77,1991.2869873046875 +26.78,1991.2208251953125 +26.79,1991.1568603515625 +26.8,1991.0927734375 +26.81,1991.028564453125 +26.82,1990.9598388671875 +26.83,1990.851318359375 +26.84,1990.723388671875 +26.85,1990.57177734375 +26.86,1990.3900146484375 +26.87,1990.1654052734375 +26.88,1989.9444580078125 +26.89,1989.7271728515625 +26.9,1989.4915771484375 +26.91,1989.260009765625 +26.92,1989.0540771484375 +26.93,1988.851806640625 +26.94,1988.6529541015625 +26.95,1988.4598388671875 +26.96,1988.30322265625 +26.97,1988.1165771484375 +26.98,1987.93115234375 +26.99,1987.749267578125 +27,1987.5595703125 +27.01,1987.3536376953125 +27.02,1987.14697265625 +27.03,1986.94384765625 +27.04,1986.744384765625 +27.05,1986.5330810546875 +27.06,1986.325439453125 +27.07,1986.136962890625 +27.08,1985.9078369140625 +27.09,1985.7266845703125 +27.1,1985.5751953125 +27.11,1985.4312744140625 +27.12,1985.2860107421875 +27.13,1985.143798828125 +27.14,1985.0089111328125 +27.15,1984.8770751953125 +27.16,1984.74365234375 +27.17,1984.613037109375 +27.18,1984.4437255859375 +27.19,1984.277587890625 +27.2,1984.1146240234375 +27.21,1983.9549560546875 +27.22,1983.7940673828125 +27.23,1983.6298828125 +27.24,1983.4688720703125 +27.25,1983.300048828125 +27.26,1983.1455078125 +27.27,1982.9764404296875 +27.28,1982.80419921875 +27.29,1982.63525390625 +27.3,1982.4761962890625 +27.31,1982.313720703125 +27.32,1982.1610107421875 +27.33,1981.967529296875 +27.34,1981.834716796875 +27.35,1981.6478271484375 +27.36,1981.4599609375 +27.37,1981.275634765625 +27.38,1981.09033203125 +27.39,1980.868896484375 +27.4,1980.6339111328125 +27.41,1980.3984375 +27.42,1980.16259765625 +27.43,1979.9176025390625 +27.44,1979.6219482421875 +27.45,1979.328857421875 +27.46,1979.040283203125 +27.47,1978.7476806640625 +27.48,1978.4444580078125 +27.49,1978.14599609375 +27.5,1977.8369140625 +27.51,1977.5108642578125 +27.52,1977.16357421875 +27.53,1976.8194580078125 +27.54,1976.4281005859375 +27.55,1976.0272216796875 +27.56,1975.6146240234375 +27.57,1975.177490234375 +27.58,1974.720458984375 +27.59,1974.27001953125 +27.6,1973.8525390625 +27.61,1973.4150390625 +27.62,1972.9949951171875 +27.63,1972.581298828125 +27.64,1972.1541748046875 +27.65,1971.7335205078125 +27.66,1971.29296875 +27.67,1970.8568115234375 +27.68,1970.4273681640625 +27.69,1970.0001220703125 +27.7,1969.564208984375 +27.71,1969.1260986328125 +27.72,1968.6904296875 +27.73,1968.261474609375 +27.74,1967.8436279296875 +27.75,1967.427978515625 +27.76,1966.9840087890625 +27.77,1966.546875 +27.78,1966.11669921875 +27.79,1965.693359375 +27.8,1965.2767333984375 +27.81,1964.8668212890625 +27.82,1964.46142578125 +27.83,1964.058349609375 +27.84,1963.666259765625 +27.85,1963.28076171875 +27.86,1962.901611328125 +27.87,1962.524658203125 +27.88,1962.154052734375 +27.89,1961.765869140625 +27.9,1961.36669921875 +27.91,1960.9698486328125 +27.92,1960.5797119140625 +27.93,1960.1917724609375 +27.94,1959.810546875 +27.95,1959.4249267578125 +27.96,1959.056884765625 +27.97,1958.6954345703125 +27.98,1958.329345703125 +27.99,1957.9698486328125 +28,1957.61669921875 +28.01,1957.2633056640625 +28.02,1956.9010009765625 +28.03,1956.536376953125 +28.04,1956.1629638671875 +28.05,1955.782958984375 +28.06,1955.4075927734375 +28.07,1955.0234375 +28.08,1954.6461181640625 +28.09,1954.275390625 +28.1,1953.9071044921875 +28.11,1953.54541015625 +28.12,1953.1793212890625 +28.13,1952.8154296875 +28.14,1952.458251953125 +28.15,1952.098876953125 +28.16,1951.75927734375 +28.17,1951.4127197265625 +28.18,1951.070556640625 +28.19,1950.7347412109375 +28.2,1950.4052734375 +28.21,1950.0799560546875 +28.22,1949.7457275390625 +28.23,1949.417724609375 +28.24,1949.07861328125 +28.25,1948.7327880859375 +28.26,1948.3890380859375 +28.27,1948.0518798828125 +28.28,1947.738525390625 +28.29,1947.4315185546875 +28.3,1947.121826171875 +28.31,1946.8314208984375 +28.32,1946.546875 +28.33,1946.268310546875 +28.34,1945.9954833984375 +28.35,1945.7393798828125 +28.36,1945.4932861328125 +28.37,1945.2548828125 +28.38,1945.0262451171875 +28.39,1944.8160400390625 +28.4,1944.621826171875 +28.41,1944.44140625 +28.42,1944.2808837890625 +28.43,1944.1490478515625 +28.44,1944.0213623046875 +28.45,1943.89794921875 +28.46,1943.778564453125 +28.47,1943.663330078125 +28.48,1943.5455322265625 +28.49,1943.431640625 +28.5,1943.32177734375 +28.51,1943.2158203125 +28.52,1943.1136474609375 +28.53,1943.0152587890625 +28.54,1942.920654296875 +28.55,1942.82958984375 +28.56,1942.7379150390625 +28.57,1942.61474609375 +28.58,1942.4276123046875 +28.59,1942.2451171875 +28.6,1942.067138671875 +28.61,1941.8936767578125 +28.62,1941.722412109375 +28.63,1941.555419921875 +28.64,1941.384033203125 +28.65,1941.2213134765625 +28.66,1941.0628662109375 +28.67,1940.904296875 +28.68,1940.7017822265625 +28.69,1940.4908447265625 +28.7,1940.2735595703125 +28.71,1940.0457763671875 +28.72,1939.8076171875 +28.73,1939.5655517578125 +28.74,1939.32861328125 +28.75,1939.0965576171875 +28.76,1938.86083984375 +28.77,1938.6300048828125 +28.78,1938.3997802734375 +28.79,1938.161376953125 +28.8,1937.9234619140625 +28.81,1937.6949462890625 +28.82,1937.4560546875 +28.83,1937.2069091796875 +28.84,1936.97802734375 +28.85,1936.754150390625 +28.86,1936.5350341796875 +28.87,1936.32080078125 +28.88,1936.0697021484375 +28.89,1935.8236083984375 +28.9,1935.5826416015625 +28.91,1935.3336181640625 +28.92,1935.0853271484375 +28.93,1934.826904296875 +28.94,1934.5736083984375 +28.95,1934.3056640625 +28.96,1934.0430908203125 +28.97,1933.7835693359375 +28.98,1933.529296875 +28.99,1933.2801513671875 +29,1933.0361328125 +29.01,1932.79931640625 +29.02,1932.6002197265625 +29.03,1932.4210205078125 +29.04,1932.252685546875 +29.05,1932.088623046875 +29.06,1931.935302734375 +29.07,1931.7926025390625 +29.08,1931.6583251953125 +29.09,1931.543212890625 +29.1,1931.46435546875 +29.11,1931.4019775390625 +29.12,1931.351318359375 +29.13,1931.3101806640625 +29.14,1931.28271484375 +29.15,1931.2667236328125 +29.16,1931.253173828125 +29.17,1931.2420654296875 +29.18,1931.2354736328125 +29.19,1931.2379150390625 +29.2,1931.255615234375 +29.21,1931.2818603515625 +29.22,1931.314453125 +29.23,1931.3773193359375 +29.24,1931.441650390625 +29.25,1931.50732421875 +29.26,1931.574462890625 +29.27,1931.6429443359375 +29.28,1931.7127685546875 +29.29,1931.7838134765625 +29.3,1931.8560791015625 +29.31,1931.9295654296875 +29.32,1932.004150390625 +29.33,1932.07763671875 +29.34,1932.15234375 +29.35,1932.2366943359375 +29.36,1932.322021484375 +29.37,1932.3929443359375 +29.38,1932.458251953125 +29.39,1932.5201416015625 +29.4,1932.572265625 +29.41,1932.62548828125 +29.42,1932.533447265625 +29.43,1932.44384765625 +29.44,1932.3568115234375 +29.45,1932.2723388671875 +29.46,1932.1903076171875 +29.47,1932.0933837890625 +29.48,1931.9990234375 +29.49,1931.9072265625 +29.5,1931.791748046875 +29.51,1931.6485595703125 +29.52,1931.4210205078125 +29.53,1931.188720703125 +29.54,1930.9385986328125 +29.55,1930.6839599609375 +29.56,1930.4051513671875 +29.57,1930.09375 +29.58,1929.7523193359375 +29.59,1929.4095458984375 +29.6,1929.0435791015625 +29.61,1928.6788330078125 +29.62,1928.3153076171875 +29.63,1927.944091796875 +29.64,1927.5762939453125 +29.65,1927.214111328125 +29.66,1926.8443603515625 +29.67,1926.480224609375 +29.68,1926.1217041015625 +29.69,1925.768798828125 +29.7,1925.4345703125 +29.71,1925.1055908203125 +29.72,1924.786376953125 +29.73,1924.47900390625 +29.74,1924.1832275390625 +29.75,1923.8924560546875 +29.76,1923.606689453125 +29.77,1923.3280029296875 +29.78,1923.05419921875 +29.79,1922.78515625 +29.8,1922.52099609375 +29.81,1922.246337890625 +29.82,1921.9764404296875 +29.83,1921.71142578125 +29.84,1921.477294921875 +29.85,1921.2498779296875 +29.86,1921.0333251953125 +29.87,1920.8428955078125 +29.88,1920.6588134765625 +29.89,1920.4808349609375 +29.9,1920.306640625 +29.91,1920.1341552734375 +29.92,1919.947998046875 +29.93,1919.765869140625 +29.94,1919.5875244140625 +29.95,1919.4132080078125 +29.96,1919.2381591796875 +29.97,1919.05615234375 +29.98,1918.8629150390625 +29.99,1918.673583984375 +30,1918.4794921875 +30.01,1918.2633056640625 +30.02,1917.9947509765625 +30.03,1917.728759765625 +30.04,1917.4654541015625 +30.05,1917.206787109375 +30.06,1916.9462890625 +30.07,1916.6884765625 +30.08,1916.4049072265625 +30.09,1916.1263427734375 +30.1,1915.8287353515625 +30.11,1915.527587890625 +30.12,1915.2099609375 +30.13,1914.89111328125 +30.14,1914.551513671875 +30.15,1914.206787109375 +30.16,1913.86328125 +30.17,1913.5234375 +30.18,1913.16748046875 +30.19,1912.8131103515625 +30.2,1912.460205078125 +30.21,1912.1131591796875 +30.22,1911.7655029296875 +30.23,1911.38671875 +30.24,1910.9879150390625 +30.25,1910.580322265625 +30.26,1910.17919921875 +30.27,1909.7802734375 +30.28,1909.3812255859375 +30.29,1908.9779052734375 +30.3,1908.56591796875 +30.31,1908.158447265625 +30.32,1907.757568359375 +30.33,1907.3480224609375 +30.34,1906.938720703125 +30.35,1906.5360107421875 +30.36,1906.1400146484375 +30.37,1905.7506103515625 +30.38,1905.3677978515625 +30.39,1904.991455078125 +30.4,1904.62158203125 +30.41,1904.2581787109375 +30.42,1903.90966796875 +30.43,1903.569580078125 +30.44,1903.235595703125 +30.45,1902.90771484375 +30.46,1902.5946044921875 +30.47,1902.2982177734375 +30.48,1902.007568359375 +30.49,1901.7333984375 +30.5,1901.473388671875 +30.51,1901.220947265625 +30.52,1900.984619140625 +30.53,1900.779541015625 +30.54,1900.581298828125 +30.55,1900.39208984375 +30.56,1900.211669921875 +30.57,1900.0445556640625 +30.58,1899.9013671875 +30.59,1899.7730712890625 +30.6,1899.6488037109375 +30.61,1899.5174560546875 +30.62,1899.3878173828125 +30.63,1899.2620849609375 +30.64,1899.1226806640625 +30.65,1899.004638671875 +30.66,1898.890380859375 +30.67,1898.77978515625 +30.68,1898.6728515625 +30.69,1898.5694580078125 +30.7,1898.4696044921875 +30.71,1898.3841552734375 +30.72,1898.3193359375 +30.73,1898.2706298828125 +30.74,1898.229248046875 +30.75,1898.1993408203125 +30.76,1898.2286376953125 +30.77,1898.30126953125 +30.78,1898.37548828125 +30.79,1898.4576416015625 +30.8,1898.541259765625 +30.81,1898.6260986328125 +30.82,1898.7056884765625 +30.83,1898.7518310546875 +30.84,1898.7994384765625 +30.85,1898.724609375 +30.86,1898.6112060546875 +30.87,1898.4749755859375 +30.88,1898.226806640625 +30.89,1897.981201171875 +30.9,1897.71630859375 +30.91,1897.4560546875 +30.92,1897.17236328125 +30.93,1896.871826171875 +30.94,1896.5634765625 +30.95,1896.251708984375 +30.96,1895.9083251953125 +30.97,1895.5662841796875 +30.98,1895.2342529296875 +30.99,1894.8643798828125 +31,1894.4830322265625 +31.01,1894.10791015625 +31.02,1893.7171630859375 +31.03,1893.33251953125 +31.04,1892.9541015625 +31.05,1892.6014404296875 +31.06,1892.2547607421875 +31.07,1891.9139404296875 +31.08,1891.5789794921875 +31.09,1891.2496337890625 +31.1,1890.8956298828125 +31.11,1890.547607421875 +31.12,1890.218505859375 +31.13,1889.8822021484375 +31.14,1889.5516357421875 +31.15,1889.2269287109375 +31.16,1888.8775634765625 +31.17,1888.5321044921875 +31.18,1888.1925048828125 +31.19,1887.861083984375 +31.2,1887.548583984375 +31.21,1887.24169921875 +31.22,1886.9425048828125 +31.23,1886.64892578125 +31.24,1886.363037109375 +31.25,1886.123779296875 +31.26,1885.893798828125 +31.27,1885.7208251953125 +31.28,1885.5521240234375 +31.29,1885.3919677734375 +31.3,1885.272705078125 +31.31,1885.18115234375 +31.32,1885.1060791015625 +31.33,1885.0340576171875 +31.34,1884.96728515625 +31.35,1884.903564453125 +31.36,1884.8515625 +31.37,1884.802490234375 +31.38,1884.784423828125 +31.39,1884.7689208984375 +31.4,1884.792724609375 +31.41,1884.8271484375 +31.42,1884.8809814453125 +31.43,1884.936279296875 +31.44,1884.9931640625 +31.45,1885.084228515625 +31.46,1885.1829833984375 +31.47,1885.2872314453125 +31.48,1885.4598388671875 +31.49,1885.6368408203125 +31.5,1885.8140869140625 +31.51,1885.9913330078125 +31.52,1886.164306640625 +31.53,1886.33740234375 +31.54,1886.468994140625 +31.55,1886.592529296875 +31.56,1886.7012939453125 +31.57,1886.734375 +31.58,1886.6754150390625 +31.59,1886.5535888671875 +31.6,1886.4063720703125 +31.61,1886.2276611328125 +31.62,1886.0523681640625 +31.63,1885.865478515625 +31.64,1885.6690673828125 +31.65,1885.4481201171875 +31.66,1885.226806640625 +31.67,1885.009521484375 +31.68,1884.796142578125 +31.69,1884.58447265625 +31.7,1884.376708984375 +31.71,1884.1727294921875 +31.72,1883.9747314453125 +31.73,1883.7762451171875 +31.74,1883.57275390625 +31.75,1883.3731689453125 +31.76,1883.17724609375 +31.77,1882.9852294921875 +31.78,1882.8011474609375 +31.79,1882.6163330078125 +31.8,1882.4351806640625 +31.81,1882.2576904296875 +31.82,1882.0880126953125 +31.83,1881.92626953125 +31.84,1881.767822265625 +31.85,1881.61279296875 +31.86,1881.4610595703125 +31.87,1881.312744140625 +31.88,1881.1676025390625 +31.89,1881.00390625 +31.9,1880.82421875 +31.91,1880.6480712890625 +31.92,1880.4754638671875 +31.93,1880.30419921875 +31.94,1880.136474609375 +31.95,1879.9613037109375 +31.96,1879.7874755859375 +31.97,1879.6171875 +31.98,1879.4482421875 +31.99,1879.2806396484375 +32,1879.1077880859375 +32.01,1878.9102783203125 +32.02,1878.7056884765625 +32.03,1878.5050048828125 +32.04,1878.30810546875 +32.05,1878.1104736328125 +32.06,1877.921142578125 +32.07,1877.7310791015625 +32.08,1877.544677734375 +32.09,1877.3511962890625 +32.1,1877.1549072265625 +32.11,1876.96240234375 +32.12,1876.773681640625 +32.13,1876.584228515625 +32.14,1876.3985595703125 +32.15,1876.2166748046875 +32.16,1876.042724609375 +32.17,1875.87890625 +32.18,1875.7183837890625 +32.19,1875.5765380859375 +32.2,1875.455322265625 +32.21,1875.337158203125 +32.22,1875.2218017578125 +32.23,1875.105224609375 +32.24,1874.991455078125 +32.25,1874.8524169921875 +32.26,1874.7144775390625 +32.27,1874.562255859375 +32.28,1874.39599609375 +32.29,1874.222412109375 +32.3,1873.9849853515625 +32.31,1873.7322998046875 +32.32,1873.4146728515625 +32.33,1873.099853515625 +32.34,1872.761962890625 +32.35,1872.4119873046875 +32.36,1872.0675048828125 +32.37,1871.7109375 +32.38,1871.3577880859375 +32.39,1870.9906005859375 +32.4,1870.6226806640625 +32.41,1870.2366943359375 +32.42,1869.8521728515625 +32.43,1869.4564208984375 +32.44,1869.066650390625 +32.45,1868.678466796875 +32.46,1868.28759765625 +32.47,1867.8834228515625 +32.48,1867.466064453125 +32.49,1867.0528564453125 +32.5,1866.64599609375 +32.51,1866.2216796875 +32.52,1865.79296875 +32.53,1865.3558349609375 +32.54,1864.91455078125 +32.55,1864.4627685546875 +32.56,1864.0157470703125 +32.57,1863.56689453125 +32.58,1863.1055908203125 +32.59,1862.6490478515625 +32.6,1862.19091796875 +32.61,1861.724853515625 +32.62,1861.2789306640625 +32.63,1860.8096923828125 +32.64,1860.328369140625 +32.65,1859.8524169921875 +32.66,1859.377197265625 +32.67,1858.9051513671875 +32.68,1858.4296875 +32.69,1857.9422607421875 +32.7,1857.46240234375 +32.71,1856.9771728515625 +32.72,1856.4822998046875 +32.73,1855.9952392578125 +32.74,1855.515869140625 +32.75,1855.044189453125 +32.76,1854.5802001953125 +32.77,1854.1236572265625 +32.78,1853.6746826171875 +32.79,1853.222412109375 +32.8,1852.755859375 +32.81,1852.288330078125 +32.82,1851.8284912109375 +32.83,1851.36767578125 +32.84,1850.9144287109375 +32.85,1850.4688720703125 +32.86,1850.02001953125 +32.87,1849.59814453125 +32.88,1849.1641845703125 +32.89,1848.7291259765625 +32.9,1848.297119140625 +32.91,1847.8660888671875 +32.92,1847.4383544921875 +32.93,1847.01806640625 +32.94,1846.6051025390625 +32.95,1846.1995849609375 +32.96,1845.8011474609375 +32.97,1845.4100341796875 +32.98,1845.0260009765625 +32.99,1844.644775390625 +33,1844.2705078125 +33.01,1843.9031982421875 +33.02,1843.5472412109375 +33.03,1843.1981201171875 +33.04,1842.851318359375 +33.05,1842.5113525390625 +33.06,1842.177978515625 +33.07,1841.851318359375 +33.08,1841.5289306640625 +33.09,1841.213134765625 +33.1,1840.9058837890625 +33.11,1840.60498046875 +33.12,1840.3101806640625 +33.13,1840.0345458984375 +33.14,1839.7757568359375 +33.15,1839.5682373046875 +33.16,1839.3702392578125 +33.17,1839.1773681640625 +33.18,1838.9984130859375 +33.19,1838.8243408203125 +33.2,1838.663818359375 +33.21,1838.5101318359375 +33.22,1838.361083984375 +33.23,1838.2166748046875 +33.24,1838.0767822265625 +33.25,1837.9412841796875 +33.26,1837.8101806640625 +33.27,1837.687744140625 +33.28,1837.569580078125 +33.29,1837.4556884765625 +33.3,1837.345703125 +33.31,1837.2398681640625 +33.32,1837.1336669921875 +33.33,1837.0010986328125 +33.34,1836.868408203125 +33.35,1836.7401123046875 +33.36,1836.6158447265625 +33.37,1836.4957275390625 +33.38,1836.3558349609375 +33.39,1836.2093505859375 +33.4,1836.0670166015625 +33.41,1835.9268798828125 +33.42,1835.7562255859375 +33.43,1835.5771484375 +33.44,1835.3939208984375 +33.45,1835.0987548828125 +33.46,1834.79638671875 +33.47,1834.4718017578125 +33.48,1834.140380859375 +33.49,1833.810791015625 +33.5,1833.4420166015625 +33.51,1833.0667724609375 +33.52,1832.691650390625 +33.53,1832.3232421875 +33.54,1831.959228515625 +33.55,1831.586669921875 +33.56,1831.20361328125 +33.57,1830.8272705078125 +33.58,1830.45751953125 +33.59,1830.094482421875 +33.6,1829.75537109375 +33.61,1829.4332275390625 +33.62,1829.1173095703125 +33.63,1828.818359375 +33.64,1828.5404052734375 +33.65,1828.2681884765625 +33.66,1828.001708984375 +33.67,1827.7408447265625 +33.68,1827.4854736328125 +33.69,1827.2442626953125 +33.7,1827.010498046875 +33.71,1826.786376953125 +33.72,1826.56298828125 +33.73,1826.3447265625 +33.74,1826.1358642578125 +33.75,1825.95361328125 +33.76,1825.7803955078125 +33.77,1825.63330078125 +33.78,1825.58984375 +33.79,1825.560302734375 +33.8,1825.533935546875 +33.81,1825.5299072265625 +33.82,1825.528564453125 +33.83,1825.6097412109375 +33.84,1825.7078857421875 +33.85,1825.8076171875 +33.86,1825.8936767578125 +33.87,1825.9793701171875 +33.88,1826.0450439453125 +33.89,1826.1124267578125 +33.9,1826.162109375 +33.91,1826.213623046875 +33.92,1826.2215576171875 +33.93,1826.1583251953125 +33.94,1826.080810546875 +33.95,1826.0020751953125 +33.96,1825.926513671875 +33.97,1825.849609375 +33.98,1825.76708984375 +33.99,1825.6876220703125 +34,1825.591796875 +34.01,1825.48828125 +34.02,1825.38818359375 +34.03,1825.2523193359375 +34.04,1825.1180419921875 +34.05,1824.9677734375 +34.06,1824.8211669921875 +34.07,1824.669677734375 +34.08,1824.52197265625 +34.09,1824.371337890625 +34.1,1824.2158203125 +34.11,1824.06396484375 +34.12,1823.91162109375 +34.13,1823.7628173828125 +34.14,1823.61767578125 +34.15,1823.4718017578125 +34.16,1823.32958984375 +34.17,1823.1822509765625 +34.18,1823.03857421875 +34.19,1822.8790283203125 +34.2,1822.7188720703125 +34.21,1822.55810546875 +34.22,1822.3902587890625 +34.23,1822.2283935546875 +34.24,1822.0701904296875 +34.25,1821.915771484375 +34.26,1821.764892578125 +34.27,1821.61767578125 +34.28,1821.4718017578125 +34.29,1821.33154296875 +34.3,1821.197021484375 +34.31,1821.074462890625 +34.32,1820.955322265625 +34.33,1820.8306884765625 +34.34,1820.7093505859375 +34.35,1820.5911865234375 +34.36,1820.4739990234375 +34.37,1820.360107421875 +34.38,1820.238525390625 +34.39,1820.070556640625 +34.4,1819.9063720703125 +34.41,1819.7457275390625 +34.42,1819.586669921875 +34.43,1819.424560546875 +34.44,1819.26611328125 +34.45,1819.10693359375 +34.46,1818.9512939453125 +34.47,1818.792724609375 +34.48,1818.534423828125 +34.49,1818.2548828125 +34.5,1817.9564208984375 +34.51,1817.654296875 +34.52,1817.33154296875 +34.53,1817.0054931640625 +34.54,1816.680419921875 +34.55,1816.3564453125 +34.56,1816.03564453125 +34.57,1815.7008056640625 +34.58,1815.3671875 +34.59,1815.0347900390625 +34.6,1814.712158203125 +34.61,1814.3907470703125 +34.62,1814.0638427734375 +34.63,1813.7425537109375 +34.64,1813.4266357421875 +34.65,1813.1312255859375 +34.66,1812.847412109375 +34.67,1812.5687255859375 +34.68,1812.3079833984375 +34.69,1812.0521240234375 +34.7,1811.80322265625 +34.71,1811.55908203125 +34.72,1811.319580078125 +34.73,1811.10205078125 +34.74,1810.888916015625 +34.75,1810.68017578125 +34.76,1810.475830078125 +34.77,1810.275634765625 +34.78,1810.0926513671875 +34.79,1809.913818359375 +34.8,1809.7584228515625 +34.81,1809.58740234375 +34.82,1809.439697265625 +34.83,1809.2869873046875 +34.84,1809.18115234375 +34.85,1809.0784912109375 +34.86,1809.0091552734375 +34.87,1808.91259765625 +34.88,1808.819091796875 +34.89,1808.7286376953125 +34.9,1808.66064453125 +34.91,1808.595458984375 +34.92,1808.532958984375 +34.93,1808.47314453125 +34.94,1808.416015625 +34.95,1808.3333740234375 +34.96,1808.2816162109375 +34.97,1808.2581787109375 +34.98,1808.211181640625 +34.99,1808.1795654296875 +35,1808.150146484375 +35.01,1808.1229248046875 +35.02,1808.097900390625 +35.03,1808.0103759765625 +35.04,1807.9256591796875 +35.05,1807.837158203125 +35.06,1807.723388671875 +35.07,1807.610595703125 +35.08,1807.4749755859375 +35.09,1807.342529296875 +35.1,1807.1917724609375 +35.11,1807.0379638671875 +35.12,1806.8875732421875 +35.13,1806.7406005859375 +35.14,1806.571044921875 +35.15,1806.40087890625 +35.16,1806.234130859375 +35.17,1806.0753173828125 +35.18,1805.919921875 +35.19,1805.763671875 +35.2,1805.61083984375 +35.21,1805.4420166015625 +35.22,1805.26806640625 +35.23,1805.09765625 +35.24,1804.9222412109375 +35.25,1804.75048828125 +35.26,1804.5758056640625 +35.27,1804.40478515625 +35.28,1804.24365234375 +35.29,1804.0797119140625 +35.3,1803.92138671875 +35.31,1803.7642822265625 +35.32,1803.599853515625 +35.33,1803.4517822265625 +35.34,1803.3070068359375 +35.35,1803.1656494140625 +35.36,1803.0059814453125 +35.37,1802.8497314453125 +35.38,1802.6947021484375 +35.39,1802.5194091796875 +35.4,1802.339111328125 +35.41,1802.1710205078125 +35.42,1801.987060546875 +35.43,1801.79833984375 +35.44,1801.621826171875 +35.45,1801.4295654296875 +35.46,1801.232421875 +35.47,1801.0262451171875 +35.48,1800.8326416015625 +35.49,1800.642822265625 +35.5,1800.4482421875 +35.51,1800.25732421875 +35.52,1800.0701904296875 +35.53,1799.8739013671875 +35.54,1799.67724609375 +35.55,1799.484375 +35.56,1799.2930908203125 +35.57,1799.1055908203125 +35.58,1798.9111328125 +35.59,1798.720458984375 +35.6,1798.5335693359375 +35.61,1798.3375244140625 +35.62,1798.145263671875 +35.63,1797.9547119140625 +35.64,1797.765869140625 +35.65,1797.580810546875 +35.66,1797.3822021484375 +35.67,1797.1680908203125 +35.68,1796.9580078125 +35.69,1796.71533203125 +35.7,1796.470703125 +35.71,1796.2281494140625 +35.72,1795.9857177734375 +35.73,1795.728271484375 +35.74,1795.423828125 +35.75,1795.087890625 +35.76,1794.755126953125 +35.77,1794.4171142578125 +35.78,1794.0716552734375 +35.79,1793.7315673828125 +35.8,1793.3841552734375 +35.81,1793.0401611328125 +35.82,1792.6888427734375 +35.83,1792.3173828125 +35.84,1791.9324951171875 +35.85,1791.5020751953125 +35.86,1791.0653076171875 +35.87,1790.6201171875 +35.88,1790.1173095703125 +35.89,1789.6175537109375 +35.9,1789.099365234375 +35.91,1788.57373046875 +35.92,1788.040771484375 +35.93,1787.5113525390625 +35.94,1786.98974609375 +35.95,1786.4737548828125 +35.96,1785.967529296875 +35.97,1785.4561767578125 +35.98,1784.952392578125 +35.99,1784.456298828125 +36,1783.9678955078125 +36.01,1783.487060546875 +36.02,1783.026611328125 +36.03,1782.5733642578125 +36.04,1782.12744140625 +36.05,1781.688720703125 +36.06,1781.29150390625 +36.07,1780.913818359375 +36.08,1780.547119140625 +36.09,1780.1932373046875 +36.1,1779.8477783203125 +36.11,1779.5086669921875 +36.12,1779.1778564453125 +36.13,1778.8682861328125 +36.14,1778.5753173828125 +36.15,1778.313720703125 +36.16,1778.059814453125 +36.17,1777.823974609375 +36.18,1777.5933837890625 +36.19,1777.3677978515625 +36.2,1777.1343994140625 +36.21,1776.9061279296875 +36.22,1776.67431640625 +36.23,1776.443359375 +36.24,1776.1724853515625 +36.25,1775.9027099609375 +36.26,1775.63623046875 +36.27,1775.336669921875 +36.28,1775.0343017578125 +36.29,1774.677734375 +36.3,1774.31689453125 +36.31,1773.9302978515625 +36.32,1773.4947509765625 +36.33,1773.06640625 +36.34,1772.645263671875 +36.35,1772.1905517578125 +36.36,1771.7413330078125 +36.37,1771.299560546875 +36.38,1770.8350830078125 +36.39,1770.371826171875 +36.4,1769.8349609375 +36.41,1769.293701171875 +36.42,1768.7459716796875 +36.43,1768.1939697265625 +36.44,1767.646484375 +36.45,1767.1075439453125 +36.46,1766.5687255859375 +36.47,1766.0384521484375 +36.48,1765.4912109375 +36.49,1764.95263671875 +36.5,1764.4228515625 +36.51,1763.8974609375 +36.52,1763.380615234375 +36.53,1762.8702392578125 +36.54,1762.368408203125 +36.55,1761.8642578125 +36.56,1761.34716796875 +36.57,1760.83447265625 +36.58,1760.3111572265625 +36.59,1759.8157958984375 +36.6,1759.318115234375 +36.61,1758.8289794921875 +36.62,1758.3482666015625 +36.63,1757.8759765625 +36.64,1757.4268798828125 +36.65,1756.9752197265625 +36.66,1756.548828125 +36.67,1756.1302490234375 +36.68,1755.7022705078125 +36.69,1755.2823486328125 +36.7,1754.865966796875 +36.71,1754.4552001953125 +36.72,1754.050048828125 +36.73,1753.652587890625 +36.74,1753.2626953125 +36.75,1752.8675537109375 +36.76,1752.47998046875 +36.77,1752.0892333984375 +36.78,1751.7060546875 +36.79,1751.341064453125 +36.8,1750.985595703125 +36.81,1750.6373291015625 +36.82,1750.2855224609375 +36.83,1749.94091796875 +36.84,1749.6033935546875 +36.85,1749.266357421875 +36.86,1748.9364013671875 +36.87,1748.619873046875 +36.88,1748.2930908203125 +36.89,1747.970947265625 +36.9,1747.65576171875 +36.91,1747.347412109375 +36.92,1747.0435791015625 +36.93,1746.7335205078125 +36.94,1746.43017578125 +36.95,1746.1292724609375 +36.96,1745.8350830078125 +36.97,1745.54736328125 +36.98,1745.2596435546875 +36.99,1744.98486328125 +37,1744.71630859375 +37.01,1744.4561767578125 +37.02,1744.20654296875 +37.03,1743.9630126953125 +37.04,1743.7275390625 +37.05,1743.4979248046875 +37.06,1743.2677001953125 +37.07,1743.043212890625 +37.08,1742.824462890625 +37.09,1742.6177978515625 +37.1,1742.423095703125 +37.11,1742.2337646484375 +37.12,1742.06689453125 +37.13,1741.9306640625 +37.14,1741.8055419921875 +37.15,1741.7064208984375 +37.16,1741.615966796875 +37.17,1741.5252685546875 +37.18,1741.4432373046875 +37.19,1741.3651123046875 +37.2,1741.3294677734375 +37.21,1741.3038330078125 +37.22,1741.2835693359375 +37.23,1741.2667236328125 +37.24,1741.2745361328125 +37.25,1741.2960205078125 +37.26,1741.3203125 +37.27,1741.34716796875 +37.28,1741.3809814453125 +37.29,1741.42578125 +37.3,1741.4752197265625 +37.31,1741.5740966796875 +37.32,1741.6746826171875 +37.33,1741.779052734375 +37.34,1741.88720703125 +37.35,1741.9970703125 +37.36,1742.1082763671875 +37.37,1742.2188720703125 +37.38,1742.330810546875 +37.39,1742.4442138671875 +37.4,1742.558837890625 +37.41,1742.6746826171875 +37.42,1742.791748046875 +37.43,1742.903564453125 +37.44,1743.0164794921875 +37.45,1743.111328125 +37.46,1743.2073974609375 +37.47,1743.2877197265625 +37.48,1743.3607177734375 +37.49,1743.41796875 +37.5,1743.476806640625 +37.51,1743.5263671875 +37.52,1743.575439453125 +37.53,1743.6131591796875 +37.54,1743.590576171875 +37.55,1743.563720703125 +37.56,1743.5028076171875 +37.57,1743.4423828125 +37.58,1743.3780517578125 +37.59,1743.262939453125 +37.6,1743.1488037109375 +37.61,1743.0078125 +37.62,1742.82958984375 +37.63,1742.65087890625 +37.64,1742.452392578125 +37.65,1742.2364501953125 +37.66,1742.022705078125 +37.67,1741.8065185546875 +37.68,1741.5625 +37.69,1741.32080078125 +37.7,1741.08349609375 +37.71,1740.842041015625 +37.72,1740.59228515625 +37.73,1740.3321533203125 +37.74,1740.048828125 +37.75,1739.7490234375 +37.76,1739.4478759765625 +37.77,1739.1412353515625 +37.78,1738.83984375 +37.79,1738.52001953125 +37.8,1738.203369140625 +37.81,1737.8856201171875 +37.82,1737.5604248046875 +37.83,1737.22998046875 +37.84,1736.9071044921875 +37.85,1736.5897216796875 +37.86,1736.271240234375 +37.87,1735.9581298828125 +37.88,1735.618408203125 +37.89,1735.284423828125 +37.9,1734.9559326171875 +37.91,1734.630859375 +37.92,1734.3114013671875 +37.93,1733.990966796875 +37.94,1733.676025390625 +37.95,1733.36669921875 +37.96,1733.062744140625 +37.97,1732.7640380859375 +37.98,1732.470703125 +37.99,1732.1827392578125 +38,1731.91064453125 +38.01,1731.6436767578125 +38.02,1731.3817138671875 +38.03,1731.1246337890625 +38.04,1730.8831787109375 +38.05,1730.6529541015625 +38.06,1730.43798828125 +38.07,1730.2425537109375 +38.08,1730.07275390625 +38.09,1729.9132080078125 +38.1,1729.7618408203125 +38.11,1729.6697998046875 +38.12,1729.5853271484375 +38.13,1729.5167236328125 +38.14,1729.4573974609375 +38.15,1729.4095458984375 +38.16,1729.3857421875 +38.17,1729.3642578125 +38.18,1729.3472900390625 +38.19,1729.334716796875 +38.2,1729.3372802734375 +38.21,1729.3460693359375 +38.22,1729.3824462890625 +38.23,1729.458984375 +38.24,1729.538818359375 +38.25,1729.6368408203125 +38.26,1729.74658203125 +38.27,1729.8719482421875 +38.28,1729.998046875 +38.29,1730.1246337890625 +38.3,1730.251708984375 +38.31,1730.34716796875 +38.32,1730.4327392578125 +38.33,1730.5150146484375 +38.34,1730.5809326171875 +38.35,1730.64794921875 +38.36,1730.7158203125 +38.37,1730.78466796875 +38.38,1730.8543701171875 +38.39,1730.920654296875 +38.4,1730.97509765625 +38.41,1731.0303955078125 +38.42,1731.0823974609375 +38.43,1731.124755859375 +38.44,1731.1573486328125 +38.45,1731.1654052734375 +38.46,1731.159912109375 +38.47,1731.13232421875 +38.48,1731.0958251953125 +38.49,1731.0546875 +38.5,1731.015380859375 +38.51,1730.9052734375 +38.52,1730.757080078125 +38.53,1730.596923828125 +38.54,1730.3992919921875 +38.55,1730.196533203125 +38.56,1729.9716796875 +38.57,1729.7420654296875 +38.58,1729.486328125 +38.59,1729.221923828125 +38.6,1728.9488525390625 +38.61,1728.6737060546875 +38.62,1728.360107421875 +38.63,1728.042724609375 +38.64,1727.7109375 +38.65,1727.360595703125 +38.66,1727.0069580078125 +38.67,1726.658447265625 +38.68,1726.302490234375 +38.69,1725.9454345703125 +38.7,1725.5806884765625 +38.71,1725.2044677734375 +38.72,1724.83154296875 +38.73,1724.423828125 +38.74,1724.0135498046875 +38.75,1723.596435546875 +38.76,1723.185302734375 +38.77,1722.77392578125 +38.78,1722.3621826171875 +38.79,1721.95654296875 +38.8,1721.550537109375 +38.81,1721.1484375 +38.82,1720.73974609375 +38.83,1720.337158203125 +38.84,1719.940673828125 +38.85,1719.55029296875 +38.86,1719.1552734375 +38.87,1718.766357421875 +38.88,1718.40478515625 +38.89,1718.0489501953125 +38.9,1717.698974609375 +38.91,1717.3590087890625 +38.92,1717.0245361328125 +38.93,1716.6956787109375 +38.94,1716.3681640625 +38.95,1716.046142578125 +38.96,1715.73388671875 +38.97,1715.4439697265625 +38.98,1715.161376953125 +38.99,1714.890380859375 +39,1714.6243896484375 +39.01,1714.3568115234375 +39.02,1714.09423828125 +39.03,1713.836669921875 +39.04,1713.5838623046875 +39.05,1713.333740234375 +39.06,1713.084228515625 +39.07,1712.8203125 +39.08,1712.554931640625 +39.09,1712.2882080078125 +39.1,1712.0244140625 +39.11,1711.74853515625 +39.12,1711.4522705078125 +39.13,1711.1378173828125 +39.14,1710.82470703125 +39.15,1710.51708984375 +39.16,1710.2149658203125 +39.17,1709.9202880859375 +39.18,1709.62890625 +39.19,1709.3428955078125 +39.2,1709.0599365234375 +39.21,1708.78662109375 +39.22,1708.51416015625 +39.23,1708.2510986328125 +39.24,1707.9952392578125 +39.25,1707.7591552734375 +39.26,1707.5279541015625 +39.27,1707.3077392578125 +39.28,1707.0921630859375 +39.29,1706.885498046875 +39.3,1706.6854248046875 +39.31,1706.50244140625 +39.32,1706.3343505859375 +39.33,1706.1937255859375 +39.34,1706.061279296875 +39.35,1705.9600830078125 +39.36,1705.8642578125 +39.37,1705.788818359375 +39.38,1705.71630859375 +39.39,1705.6468505859375 +39.4,1705.60595703125 +39.41,1705.578369140625 +39.42,1705.5596923828125 +39.43,1705.5540771484375 +39.44,1705.5782470703125 +39.45,1705.6064453125 +39.46,1705.6407470703125 +39.47,1705.6788330078125 +39.48,1705.729248046875 +39.49,1705.7918701171875 +39.5,1705.8599853515625 +39.51,1705.931640625 +39.52,1706.00439453125 +39.53,1706.078369140625 +39.54,1706.153564453125 +39.55,1706.2276611328125 +39.56,1706.294189453125 +39.57,1706.3427734375 +39.58,1706.36279296875 +39.59,1706.3525390625 +39.6,1706.3206787109375 +39.61,1706.2738037109375 +39.62,1706.195068359375 +39.63,1706.108154296875 +39.64,1706.0133056640625 +39.65,1705.8934326171875 +39.66,1705.7679443359375 +39.67,1705.643310546875 +39.68,1705.51953125 +39.69,1705.3902587890625 +39.7,1705.2574462890625 +39.71,1705.1192626953125 +39.72,1704.9649658203125 +39.73,1704.7947998046875 +39.74,1704.617431640625 +39.75,1704.44140625 +39.76,1704.268798828125 +39.77,1704.1019287109375 +39.78,1703.9361572265625 +39.79,1703.7760009765625 +39.8,1703.6234130859375 +39.81,1703.4761962890625 +39.82,1703.3321533203125 +39.83,1703.2061767578125 +39.84,1703.0831298828125 +39.85,1702.9630126953125 +39.86,1702.8309326171875 +39.87,1702.7166748046875 +39.88,1702.59033203125 +39.89,1702.467041015625 +39.9,1702.338134765625 +39.91,1702.2120361328125 +39.92,1702.0740966796875 +39.93,1701.9541015625 +39.94,1701.8369140625 +39.95,1701.7225341796875 +39.96,1701.6109619140625 +39.97,1701.4979248046875 +39.98,1701.391845703125 +39.99,1701.2884521484375 +40,1701.1878662109375 +40.01,1701.0941162109375 +40.02,1701.0029296875 +40.03,1700.914306640625 +40.04,1700.8216552734375 +40.05,1700.7293701171875 +40.06,1700.6396484375 +40.07,1700.5523681640625 +40.08,1700.467529296875 +40.09,1700.3873291015625 +40.1,1700.3095703125 +40.11,1700.23193359375 +40.12,1700.1566162109375 +40.13,1700.1090087890625 +40.14,1700.0633544921875 +40.15,1700.019775390625 +40.16,1699.980224609375 +40.17,1699.9425048828125 +40.18,1699.9044189453125 +40.19,1699.8619384765625 +40.2,1699.8212890625 +40.21,1699.77392578125 +40.22,1699.728515625 +40.23,1699.6849365234375 +40.24,1699.6431884765625 +40.25,1699.5777587890625 +40.26,1699.5037841796875 +40.27,1699.431884765625 +40.28,1699.3428955078125 +40.29,1699.254150390625 +40.3,1699.1676025390625 +40.31,1699.083251953125 +40.32,1699.0010986328125 +40.33,1698.9190673828125 +40.34,1698.82861328125 +40.35,1698.687255859375 +40.36,1698.52734375 +40.37,1698.3641357421875 +40.38,1698.2103271484375 +40.39,1698.052978515625 +40.4,1697.898681640625 +40.41,1697.747314453125 +40.42,1697.598876953125 +40.43,1697.4595947265625 +40.44,1697.3338623046875 +40.45,1697.229736328125 +40.46,1697.13232421875 +40.47,1697.032958984375 +40.48,1696.93603515625 +40.49,1696.837158203125 +40.5,1696.744873046875 +40.51,1696.6590576171875 +40.52,1696.575439453125 +40.53,1696.509033203125 +40.54,1696.463623046875 +40.55,1696.4412841796875 +40.56,1696.4332275390625 +40.57,1696.426513671875 +40.58,1696.42333984375 +40.59,1696.42138671875 +40.6,1696.420654296875 +40.61,1696.4212646484375 +40.62,1696.429443359375 +40.63,1696.4578857421875 +40.64,1696.4935302734375 +40.65,1696.542724609375 +40.66,1696.5926513671875 +40.67,1696.64306640625 +40.68,1696.7047119140625 +40.69,1696.75634765625 +40.7,1696.8084716796875 +40.71,1696.8612060546875 +40.72,1696.91015625 +40.73,1696.9595947265625 +40.74,1697.009521484375 +40.75,1697.0599365234375 +40.76,1697.1002197265625 +40.77,1697.1409912109375 +40.78,1697.16748046875 +40.79,1697.188232421875 +40.8,1697.2054443359375 +40.81,1697.223388671875 +40.82,1697.216552734375 +40.83,1697.2022705078125 +40.84,1697.15283203125 +40.85,1697.098388671875 +40.86,1697.0284423828125 +40.87,1696.945068359375 +40.88,1696.8294677734375 +40.89,1696.716064453125 +40.9,1696.604736328125 +40.91,1696.495361328125 +40.92,1696.422119140625 +40.93,1696.3568115234375 +40.94,1696.2994384765625 +40.95,1696.2562255859375 +40.96,1696.2144775390625 +40.97,1696.1739501953125 +40.98,1696.1474609375 +40.99,1696.136962890625 +41,1696.12744140625 +41.01,1696.106201171875 +41.02,1696.0838623046875 +41.03,1696.0626220703125 +41.04,1696.0360107421875 +41.05,1696.010498046875 +41.06,1695.9095458984375 +41.07,1695.7978515625 +41.08,1695.6859130859375 +41.09,1695.5546875 +41.1,1695.40869140625 +41.11,1695.2650146484375 +41.12,1695.11083984375 +41.13,1694.9591064453125 +41.14,1694.784423828125 +41.15,1694.5867919921875 +41.16,1694.3773193359375 +41.17,1694.158203125 +41.18,1693.9359130859375 +41.19,1693.7061767578125 +41.2,1693.4288330078125 +41.21,1693.1446533203125 +41.22,1692.8155517578125 +41.23,1692.467529296875 +41.24,1692.064697265625 +41.25,1691.6629638671875 +41.26,1691.179443359375 +41.27,1690.7020263671875 +41.28,1690.2159423828125 +41.29,1689.7232666015625 +41.3,1689.2369384765625 +41.31,1688.7569580078125 +41.32,1688.2684326171875 +41.33,1687.786376953125 +41.34,1687.3106689453125 +41.35,1686.8370361328125 +41.36,1686.3697509765625 +41.37,1685.90869140625 +41.38,1685.4390869140625 +41.39,1684.9759521484375 +41.4,1684.5191650390625 +41.41,1684.0687255859375 +41.42,1683.6246337890625 +41.43,1683.1868896484375 +41.44,1682.7469482421875 +41.45,1682.3154296875 +41.46,1681.913330078125 +41.47,1681.5194091796875 +41.48,1681.1292724609375 +41.49,1680.736572265625 +41.5,1680.3582763671875 +41.51,1679.9771728515625 +41.52,1679.6019287109375 +41.53,1679.240966796875 +41.54,1678.9090576171875 +41.55,1678.58251953125 +41.56,1678.26123046875 +41.57,1677.966552734375 +41.58,1677.696044921875 +41.59,1677.481201171875 +41.6,1677.2706298828125 +41.61,1677.06640625 +41.62,1676.8663330078125 +41.63,1676.6702880859375 +41.64,1676.4825439453125 +41.65,1676.2987060546875 +41.66,1676.118896484375 +41.67,1675.9620361328125 +41.68,1675.7685546875 +41.69,1675.5791015625 +41.7,1675.3892822265625 +41.71,1675.2012939453125 +41.72,1675.0003662109375 +41.73,1674.803466796875 +41.74,1674.58935546875 +41.75,1674.3690185546875 +41.76,1674.1444091796875 +41.77,1673.9136962890625 +41.78,1673.6873779296875 +41.79,1673.46533203125 +41.8,1673.2454833984375 +41.81,1673.0299072265625 +41.82,1672.8165283203125 +41.83,1672.579833984375 +41.84,1672.332763671875 +41.85,1672.031005859375 +41.86,1671.7322998046875 +41.87,1671.4281005859375 +41.88,1671.1270751953125 +41.89,1670.7781982421875 +41.9,1670.392822265625 +41.91,1669.9775390625 +41.92,1669.5093994140625 +41.93,1669.0355224609375 +41.94,1668.5518798828125 +41.95,1668.0670166015625 +41.96,1667.544921875 +41.97,1666.986083984375 +41.98,1666.412109375 +41.99,1665.833740234375 +42,1665.2403564453125 +42.01,1664.638671875 +42.02,1664.0435791015625 +42.03,1663.4423828125 +42.04,1662.830810546875 +42.05,1662.2239990234375 +42.06,1661.6259765625 +42.07,1661.036865234375 +42.08,1660.45654296875 +42.09,1659.8848876953125 +42.1,1659.3260498046875 +42.11,1658.77587890625 +42.12,1658.2447509765625 +42.13,1657.7283935546875 +42.14,1657.29833984375 +42.15,1656.888427734375 +42.16,1656.504638671875 +42.17,1656.1297607421875 +42.18,1655.76171875 +42.19,1655.4046630859375 +42.2,1655.0584716796875 +42.21,1654.7421875 +42.22,1654.4404296875 +42.23,1654.1680908203125 +42.24,1653.9267578125 +42.25,1653.6951904296875 +42.26,1653.5091552734375 +42.27,1653.3470458984375 +42.28,1653.189453125 +42.29,1653.042724609375 +42.3,1652.9111328125 +42.31,1652.7879638671875 +42.32,1652.6689453125 +42.33,1652.5582275390625 +42.34,1652.4683837890625 +42.35,1652.409912109375 +42.36,1652.3590087890625 +42.37,1652.3114013671875 +42.38,1652.26708984375 +42.39,1652.2216796875 +42.4,1652.1793212890625 +42.41,1652.14013671875 +42.42,1652.0765380859375 +42.43,1651.9569091796875 +42.44,1651.8326416015625 +42.45,1651.6995849609375 +42.46,1651.5704345703125 +42.47,1651.443115234375 +42.48,1651.3197021484375 +42.49,1651.1705322265625 +42.5,1651.025390625 +42.51,1650.88427734375 +42.52,1650.717529296875 +42.53,1650.5465087890625 +42.54,1650.379638671875 +42.55,1650.2086181640625 +42.56,1650.03759765625 +42.57,1649.8602294921875 +42.58,1649.6744384765625 +42.59,1649.4571533203125 +42.6,1649.229736328125 +42.61,1648.9310302734375 +42.62,1648.6146240234375 +42.63,1648.2615966796875 +42.64,1647.9000244140625 +42.65,1647.5361328125 +42.66,1647.1236572265625 +42.67,1646.698974609375 +42.68,1646.255859375 +42.69,1645.80712890625 +42.7,1645.3656005859375 +42.71,1644.9080810546875 +42.72,1644.4537353515625 +42.73,1644.0067138671875 +42.74,1643.56689453125 +42.75,1643.138427734375 +42.76,1642.7403564453125 +42.77,1642.34912109375 +42.78,1641.9688720703125 +42.79,1641.597412109375 +42.8,1641.26416015625 +42.81,1640.9561767578125 +42.82,1640.681640625 +42.83,1640.4400634765625 +42.84,1640.22705078125 +42.85,1640.044189453125 +42.86,1639.8681640625 +42.87,1639.69677734375 +42.88,1639.5426025390625 +42.89,1639.394775390625 +42.9,1639.26806640625 +42.91,1639.196044921875 +42.92,1639.12744140625 +42.93,1639.068603515625 +42.94,1639.012939453125 +42.95,1638.96044921875 +42.96,1638.9112548828125 +42.97,1638.8524169921875 +42.98,1638.77978515625 +42.99,1638.6934814453125 +43,1638.6085205078125 +43.01,1638.522705078125 +43.02,1638.425537109375 +43.03,1638.325439453125 +43.04,1638.1654052734375 +43.05,1637.99462890625 +43.06,1637.8111572265625 +43.07,1637.632080078125 +43.08,1637.455078125 +43.09,1637.2506103515625 +43.1,1637.0506591796875 +43.11,1636.8341064453125 +43.12,1636.6094970703125 +43.13,1636.3917236328125 +43.14,1636.1702880859375 +43.15,1635.9534912109375 +43.16,1635.7413330078125 +43.17,1635.53369140625 +43.18,1635.33056640625 +43.19,1635.1319580078125 +43.2,1634.9378662109375 +43.21,1634.748046875 +43.22,1634.5625 +43.23,1634.38134765625 +43.24,1634.2044677734375 +43.25,1634.03173828125 +43.26,1633.8631591796875 +43.27,1633.696533203125 +43.28,1633.527587890625 +43.29,1633.333251953125 +43.3,1633.1727294921875 +43.31,1633.0162353515625 +43.32,1632.8341064453125 +43.33,1632.630859375 +43.34,1632.429931640625 +43.35,1632.2333984375 +43.36,1632.043212890625 +43.37,1631.8572998046875 +43.38,1631.675537109375 +43.39,1631.498046875 +43.4,1631.32470703125 +43.41,1631.170166015625 +43.42,1631.0279541015625 +43.43,1630.889404296875 +43.44,1630.7545166015625 +43.45,1630.6148681640625 +43.46,1630.45556640625 +43.47,1630.3001708984375 +43.48,1630.1466064453125 +43.49,1629.9862060546875 +43.5,1629.8255615234375 +43.51,1629.660400390625 +43.52,1629.4991455078125 +43.53,1629.3416748046875 +43.54,1629.18798828125 +43.55,1629.0380859375 +43.56,1628.90673828125 +43.57,1628.808349609375 +43.58,1628.713134765625 +43.59,1628.62109375 +43.6,1628.5322265625 +43.61,1628.4462890625 +43.62,1628.3634033203125 +43.63,1628.2686767578125 +43.64,1628.177001953125 +43.65,1628.0714111328125 +43.66,1627.9627685546875 +43.67,1627.8634033203125 +43.68,1627.7608642578125 +43.69,1627.6614990234375 +43.7,1627.5462646484375 +43.71,1627.4256591796875 +43.72,1627.308349609375 +43.73,1627.1837158203125 +43.74,1627.062255859375 +43.75,1626.93994140625 +43.76,1626.8145751953125 +43.77,1626.6923828125 +43.78,1626.5458984375 +43.79,1626.3966064453125 +43.8,1626.240234375 +43.81,1626.0831298828125 +43.82,1625.9296875 +43.83,1625.77978515625 +43.84,1625.63330078125 +43.85,1625.4903564453125 +43.86,1625.350830078125 +43.87,1625.214599609375 +43.88,1625.0816650390625 +43.89,1624.9520263671875 +43.9,1624.8255615234375 +43.91,1624.7022705078125 +43.92,1624.5675048828125 +43.93,1624.4190673828125 +43.94,1624.267822265625 +43.95,1624.0968017578125 +43.96,1623.929443359375 +43.97,1623.761474609375 +43.98,1623.5927734375 +43.99,1623.4298095703125 +44,1623.2662353515625 +44.01,1623.0618896484375 +44.02,1622.8931884765625 +44.03,1622.6964111328125 +44.04,1622.505615234375 +44.05,1622.3187255859375 +44.06,1622.1461181640625 +44.07,1621.9666748046875 +44.08,1621.7908935546875 +44.09,1621.618896484375 +44.1,1621.4505615234375 +44.11,1621.2646484375 +44.12,1621.103515625 +44.13,1620.9417724609375 +44.14,1620.7835693359375 +44.15,1620.62255859375 +44.16,1620.465087890625 +44.17,1620.300537109375 +44.18,1620.1395263671875 +44.19,1619.9925537109375 +44.2,1619.855224609375 +44.21,1619.72119140625 +44.22,1619.592529296875 +44.23,1619.4669189453125 +44.24,1619.4140625 +44.25,1619.363525390625 +44.26,1619.3258056640625 +44.27,1619.2904052734375 +44.28,1619.257080078125 +44.29,1619.2196044921875 +44.3,1619.1842041015625 +44.31,1619.1234130859375 +44.32,1619.0438232421875 +44.33,1618.9521484375 +44.34,1618.863037109375 +44.35,1618.7554931640625 +44.36,1618.648681640625 +44.37,1618.521484375 +44.38,1618.390869140625 +44.39,1618.26318359375 +44.4,1618.0943603515625 +44.41,1617.901611328125 +44.42,1617.6661376953125 +44.43,1617.41796875 +44.44,1617.1529541015625 +44.45,1616.869140625 +44.46,1616.52685546875 +44.47,1616.1834716796875 +44.48,1615.7822265625 +44.49,1615.3197021484375 +44.5,1614.827880859375 +44.51,1614.2568359375 +44.52,1613.6600341796875 +44.53,1613.0565185546875 +44.54,1612.4464111328125 +44.55,1611.8446044921875 +44.56,1611.238525390625 +44.57,1610.640869140625 +44.58,1610.059814453125 +44.59,1609.48681640625 +44.6,1608.92626953125 +44.61,1608.3778076171875 +44.62,1607.83935546875 +44.63,1607.3782958984375 +44.64,1606.941162109375 +44.65,1606.5108642578125 +44.66,1606.091552734375 +44.67,1605.7147216796875 +44.68,1605.34423828125 +44.69,1604.990478515625 +44.7,1604.663818359375 +44.71,1604.357666015625 +44.72,1604.0782470703125 +44.73,1603.850341796875 +44.74,1603.62744140625 +44.75,1603.4091796875 +44.76,1603.1956787109375 +44.77,1602.98681640625 +44.78,1602.7825927734375 +44.79,1602.5828857421875 +44.8,1602.377197265625 +44.81,1602.176025390625 +44.82,1601.970947265625 +44.83,1601.7705078125 +44.84,1601.530517578125 +44.85,1601.2847900390625 +44.86,1601.0440673828125 +44.87,1600.7977294921875 +44.88,1600.529052734375 +44.89,1600.25927734375 +44.9,1599.975830078125 +44.91,1599.6788330078125 +44.92,1599.3516845703125 +44.93,1599.0072021484375 +44.94,1598.658203125 +44.95,1598.300537109375 +44.96,1597.93017578125 +44.97,1597.541015625 +44.98,1597.15625 +44.99,1596.7591552734375 +45,1596.337158203125 +45.01,1595.9114990234375 +45.02,1595.48876953125 +45.03,1595.0372314453125 +45.04,1594.58251953125 +45.05,1594.13525390625 +45.06,1593.68896484375 +45.07,1593.2247314453125 +45.08,1592.793212890625 +45.09,1592.368896484375 +45.1,1591.95166015625 +45.11,1591.5435791015625 +45.12,1591.146728515625 +45.13,1590.762939453125 +45.14,1590.413330078125 +45.15,1590.08056640625 +45.16,1589.8065185546875 +45.17,1589.5465087890625 +45.18,1589.294189453125 +45.19,1589.0662841796875 +45.2,1588.849853515625 +45.21,1588.669921875 +45.22,1588.5135498046875 +45.23,1588.363525390625 +45.24,1588.2178955078125 +45.25,1588.1416015625 +45.26,1588.083740234375 +45.27,1588.041748046875 +45.28,1588.0469970703125 +45.29,1588.0548095703125 +45.3,1588.065185546875 +45.31,1588.078125 +45.32,1588.068359375 +45.33,1588.0338134765625 +45.34,1587.998046875 +45.35,1587.9588623046875 +45.36,1587.9014892578125 +45.37,1587.8472900390625 +45.38,1587.7939453125 +45.39,1587.7435302734375 +45.4,1587.696044921875 +45.41,1587.6514892578125 +45.42,1587.61181640625 +45.43,1587.5748291015625 +45.44,1587.5322265625 +45.45,1587.4923095703125 +45.46,1587.436279296875 +45.47,1587.383056640625 +45.48,1587.3138427734375 +45.49,1587.176025390625 +45.5,1587.0040283203125 +45.51,1586.817138671875 +45.52,1586.6324462890625 +45.53,1586.38037109375 +45.54,1586.1226806640625 +45.55,1585.813232421875 +45.56,1585.4671630859375 +45.57,1585.0828857421875 +45.58,1584.662841796875 +45.59,1584.2054443359375 +45.6,1583.7152099609375 +45.61,1583.22607421875 +45.62,1582.738037109375 +45.63,1582.2552490234375 +45.64,1581.7044677734375 +45.65,1581.1513671875 +45.66,1580.5960693359375 +45.67,1580.036376953125 +45.68,1579.4827880859375 +45.69,1578.933349609375 +45.7,1578.3922119140625 +45.71,1577.859375 +45.72,1577.334716796875 +45.73,1576.81591796875 +45.74,1576.30517578125 +45.75,1575.8026123046875 +45.76,1575.31005859375 +45.77,1574.8316650390625 +45.78,1574.361083984375 +45.79,1573.898193359375 +45.8,1573.44287109375 +45.81,1573.0118408203125 +45.82,1572.5882568359375 +45.83,1572.1844482421875 +45.84,1571.7939453125 +45.85,1571.4105224609375 +45.86,1571.040283203125 +45.87,1570.69140625 +45.88,1570.34912109375 +45.89,1570.013427734375 +45.9,1569.6842041015625 +45.91,1569.365478515625 +45.92,1569.0738525390625 +45.93,1568.7945556640625 +45.94,1568.5421142578125 +45.95,1568.2744140625 +45.96,1568.033447265625 +45.97,1567.7978515625 +45.98,1567.567626953125 +45.99,1567.35107421875 +46,1567.1397705078125 +46.01,1566.93359375 +46.02,1566.732421875 +46.03,1566.5635986328125 +46.04,1566.43505859375 +46.05,1566.3106689453125 +46.06,1566.2052001953125 +46.07,1566.1141357421875 +46.08,1566.052001953125 +46.09,1566.0247802734375 +46.1,1566.051025390625 +46.11,1566.0902099609375 +46.12,1566.1317138671875 +46.13,1566.175537109375 +46.14,1566.2215576171875 +46.15,1566.269775390625 +46.16,1566.284423828125 +46.17,1566.223876953125 +46.18,1566.15185546875 +46.19,1566.0244140625 +46.2,1565.8106689453125 +46.21,1565.513671875 +46.22,1565.128173828125 +46.23,1564.7093505859375 +46.24,1564.278564453125 +46.25,1563.854736328125 +46.26,1563.4378662109375 +46.27,1563.0279541015625 +46.28,1562.6248779296875 +46.29,1562.2996826171875 +46.3,1562.0035400390625 +46.31,1561.8240966796875 +46.32,1561.68896484375 +46.33,1561.56201171875 +46.34,1561.5081787109375 +46.35,1561.489013671875 +46.36,1561.4725341796875 +46.37,1561.4713134765625 +46.38,1561.483154296875 +46.39,1561.5078125 +46.4,1561.5472412109375 +46.41,1561.5887451171875 +46.42,1561.6197509765625 +46.43,1561.6527099609375 +46.44,1561.687744140625 +46.45,1561.7247314453125 +46.46,1561.763671875 +46.47,1561.804443359375 +46.48,1561.8406982421875 +46.49,1561.8746337890625 +46.5,1561.91455078125 +46.51,1561.9561767578125 +46.52,1561.9996337890625 +46.53,1562.044677734375 +46.54,1562.0977783203125 +46.55,1562.1522216796875 +46.56,1562.2103271484375 +46.57,1562.2740478515625 +46.58,1562.339111328125 +46.59,1562.401123046875 +46.6,1562.4644775390625 +46.61,1562.529052734375 +46.62,1562.5948486328125 +46.63,1562.6533203125 +46.64,1562.7130126953125 +46.65,1562.7655029296875 +46.66,1562.806640625 +46.67,1562.84912109375 +46.68,1562.848876953125 +46.69,1562.8482666015625 +46.7,1562.8367919921875 +46.71,1562.8082275390625 +46.72,1562.781494140625 +46.73,1562.7568359375 +46.74,1562.7171630859375 +46.75,1562.6522216796875 +46.76,1562.574951171875 +46.77,1562.4896240234375 +46.78,1562.4068603515625 +46.79,1562.3201904296875 +46.8,1562.231689453125 +46.81,1562.1185302734375 +46.82,1562.008056640625 +46.83,1561.83544921875 +46.84,1561.6556396484375 +46.85,1561.472900390625 +46.86,1561.293701171875 +46.87,1561.1177978515625 +46.88,1560.9410400390625 +46.89,1560.7635498046875 +46.9,1560.5726318359375 +46.91,1560.379150390625 +46.92,1560.1807861328125 +46.93,1559.986083984375 +46.94,1559.755126953125 +46.95,1559.515625 +46.96,1559.265625 +46.97,1559.015625 +46.98,1558.732177734375 +46.99,1558.448974609375 +47,1558.17041015625 +47.01,1557.8922119140625 +47.02,1557.6185302734375 +47.03,1557.34716796875 +47.04,1557.080322265625 +47.05,1556.8138427734375 +47.06,1556.5517578125 +47.07,1556.2940673828125 +47.08,1556.0450439453125 +47.09,1555.80029296875 +47.1,1555.5556640625 +47.11,1555.336181640625 +47.12,1555.1248779296875 +47.13,1554.9176025390625 +47.14,1554.71630859375 +47.15,1554.5189208984375 +47.16,1554.3358154296875 +47.17,1554.1563720703125 +47.18,1553.98681640625 +47.19,1553.8876953125 +47.2,1553.7913818359375 +47.21,1553.6978759765625 +47.22,1553.6070556640625 +47.23,1553.5189208984375 +47.24,1553.3623046875 +47.25,1553.2027587890625 +47.26,1553.0382080078125 +47.27,1552.824951171875 +47.28,1552.607177734375 +47.29,1552.3787841796875 +47.3,1552.1273193359375 +47.31,1551.8739013671875 +47.32,1551.616455078125 +47.33,1551.35302734375 +47.34,1551.071044921875 +47.35,1550.7750244140625 +47.36,1550.473388671875 +47.37,1550.166259765625 +47.38,1549.8369140625 +47.39,1549.5086669921875 +47.4,1549.1856689453125 +47.41,1548.83447265625 +47.42,1548.4866943359375 +47.43,1548.1297607421875 +47.44,1547.7659912109375 +47.45,1547.4058837890625 +47.46,1547.0513916015625 +47.47,1546.700439453125 +47.48,1546.33203125 +47.49,1545.9591064453125 +47.5,1545.587890625 +47.51,1545.2225341796875 +47.52,1544.863037109375 +47.53,1544.5093994140625 +47.54,1544.1363525390625 +47.55,1543.7587890625 +47.56,1543.3873291015625 +47.57,1542.996826171875 +47.58,1542.6063232421875 +47.59,1542.2158203125 +47.6,1541.83154296875 +47.61,1541.4471435546875 +47.62,1541.0667724609375 +47.63,1540.6781005859375 +47.64,1540.287353515625 +47.65,1539.8883056640625 +47.66,1539.4957275390625 +47.67,1539.109619140625 +47.68,1538.71728515625 +47.69,1538.3314208984375 +47.7,1537.951904296875 +47.71,1537.59326171875 +47.72,1537.2408447265625 +47.73,1536.896484375 +47.74,1536.57275390625 +47.75,1536.259033203125 +47.76,1535.950927734375 +47.77,1535.658935546875 +47.78,1535.3848876953125 +47.79,1535.1163330078125 +47.8,1534.8529052734375 +47.81,1534.5947265625 +47.82,1534.3416748046875 +47.83,1534.0811767578125 +47.84,1533.8133544921875 +47.85,1533.55078125 +47.86,1533.287109375 +47.87,1533.0286865234375 +47.88,1532.7733154296875 +47.89,1532.5230712890625 +47.9,1532.27587890625 +47.91,1532.021240234375 +47.92,1531.771728515625 +47.93,1531.5272216796875 +47.94,1531.289794921875 +47.95,1531.0740966796875 +47.96,1530.863037109375 +47.97,1530.660888671875 +47.98,1530.46337890625 +47.99,1530.2703857421875 +48,1530.096435546875 +48.01,1529.94140625 +48.02,1529.811279296875 +48.03,1529.6932373046875 +48.04,1529.595703125 +48.05,1529.5286865234375 +48.06,1529.5107421875 +48.07,1529.495361328125 +48.08,1529.515869140625 +48.09,1529.578369140625 +48.1,1529.648681640625 +48.11,1529.720458984375 +48.12,1529.7979736328125 +48.13,1529.9376220703125 +48.14,1530.0780029296875 +48.15,1530.2191162109375 +48.16,1530.3607177734375 +48.17,1530.5030517578125 +48.18,1530.620849609375 +48.19,1530.7060546875 +48.2,1530.6669921875 +48.21,1530.5426025390625 +48.22,1530.3984375 +48.23,1530.2242431640625 +48.24,1529.9786376953125 +48.25,1529.735595703125 +48.26,1529.4405517578125 +48.27,1529.1463623046875 +48.28,1528.8050537109375 +48.29,1528.431640625 +48.3,1528.0391845703125 +48.31,1527.6485595703125 +48.32,1527.25146484375 +48.33,1526.822998046875 +48.34,1526.386474609375 +48.35,1525.9169921875 +48.36,1525.4461669921875 +48.37,1524.9822998046875 +48.38,1524.5255126953125 +48.39,1524.0755615234375 +48.4,1523.6324462890625 +48.41,1523.1878662109375 +48.42,1522.7376708984375 +48.43,1522.29443359375 +48.44,1521.858154296875 +48.45,1521.4140625 +48.46,1520.9769287109375 +48.47,1520.5362548828125 +48.48,1520.1026611328125 +48.49,1519.6759033203125 +48.5,1519.2706298828125 +48.51,1518.8824462890625 +48.52,1518.5257568359375 +48.53,1518.17724609375 +48.54,1517.87451171875 +48.55,1517.583740234375 +48.56,1517.3212890625 +48.57,1517.068359375 +48.58,1516.84765625 +48.59,1516.6422119140625 +48.6,1516.44140625 +48.61,1516.2576904296875 +48.62,1516.0784912109375 +48.63,1515.903564453125 +48.64,1515.7496337890625 +48.65,1515.6351318359375 +48.66,1515.5242919921875 +48.67,1515.4337158203125 +48.68,1515.3465576171875 +48.69,1515.2628173828125 +48.7,1515.182373046875 +48.71,1515.1051025390625 +48.72,1515.0205078125 +48.73,1514.930908203125 +48.74,1514.8446044921875 +48.75,1514.761474609375 +48.76,1514.681640625 +48.77,1514.6048583984375 +48.78,1514.52490234375 +48.79,1514.41064453125 +48.8,1514.2998046875 +48.81,1514.1923828125 +48.82,1514.09033203125 +48.83,1513.9915771484375 +48.84,1513.89599609375 +48.85,1513.8121337890625 +48.86,1513.754150390625 +48.87,1513.703125 +48.88,1513.673583984375 +48.89,1513.6484375 +48.9,1513.625732421875 +48.91,1513.6053466796875 +48.92,1513.5872802734375 +48.93,1513.571533203125 +48.94,1513.5557861328125 +48.95,1513.525634765625 +48.96,1513.4686279296875 +48.97,1513.40576171875 +48.98,1513.3267822265625 +48.99,1513.181884765625 +49,1512.9884033203125 +49.01,1512.794677734375 +49.02,1512.6007080078125 +49.03,1512.343994140625 +49.04,1512.0399169921875 +49.05,1511.7388916015625 +49.06,1511.4429931640625 +49.07,1511.152099609375 +49.08,1510.8662109375 +49.09,1510.562255859375 +49.1,1510.2635498046875 +49.11,1509.969970703125 +49.12,1509.71484375 +49.13,1509.4664306640625 +49.14,1509.22265625 +49.15,1508.9833984375 +49.16,1508.76953125 +49.17,1508.57861328125 +49.18,1508.4146728515625 +49.19,1508.2545166015625 +49.2,1508.09814453125 +49.21,1507.9454345703125 +49.22,1507.79638671875 +49.23,1507.575927734375 +49.24,1507.3575439453125 +49.25,1507.0582275390625 +49.26,1506.722412109375 +49.27,1506.365234375 +49.28,1505.886962890625 +49.29,1505.3843994140625 +49.3,1504.8331298828125 +49.31,1504.2896728515625 +49.32,1503.754150390625 +49.33,1503.226318359375 +49.34,1502.706298828125 +49.35,1502.2333984375 +49.36,1501.830078125 +49.37,1501.4498291015625 +49.38,1501.075927734375 +49.39,1500.7103271484375 +49.4,1500.350830078125 +49.41,1499.9974365234375 +49.42,1499.6522216796875 +49.43,1499.3109130859375 +49.44,1498.9736328125 +49.45,1498.64013671875 +49.46,1498.310546875 +49.47,1497.9639892578125 +49.48,1497.621337890625 +49.49,1497.2806396484375 +49.5,1496.939697265625 +49.51,1496.602783203125 +49.52,1496.269775390625 +49.53,1495.932373046875 +49.54,1495.598876953125 +49.55,1495.260986328125 +49.56,1494.925048828125 +49.57,1494.5765380859375 +49.58,1494.227783203125 +49.59,1493.872802734375 +49.6,1493.51171875 +49.61,1493.14453125 +49.62,1492.7567138671875 +49.63,1492.371337890625 +49.64,1491.9801025390625 +49.65,1491.5914306640625 +49.66,1491.2012939453125 +49.67,1490.81787109375 +49.68,1490.4306640625 +49.69,1490.0418701171875 +49.7,1489.64111328125 +49.71,1489.2452392578125 +49.72,1488.8458251953125 +49.73,1488.4532470703125 +49.74,1488.059326171875 +49.75,1487.655517578125 +49.76,1487.239990234375 +49.77,1486.8316650390625 +49.78,1486.3970947265625 +49.79,1485.94921875 +49.8,1485.5087890625 +49.81,1485.0592041015625 +49.82,1484.6171875 +49.83,1484.161865234375 +49.84,1483.69775390625 +49.85,1483.2413330078125 +49.86,1482.786376953125 +49.87,1482.3328857421875 +49.88,1481.87255859375 +49.89,1481.4344482421875 +49.9,1481.00390625 +49.91,1480.5809326171875 +49.92,1480.1861572265625 +49.93,1479.8089599609375 +49.94,1479.4490966796875 +49.95,1479.1209716796875 +49.96,1478.8118896484375 +49.97,1478.5484619140625 +49.98,1478.305419921875 +49.99,1478.0887451171875 +50,1477.9044189453125 +50.01,1477.7332763671875 +50.02,1477.5836181640625 +50.03,1477.448974609375 +50.04,1477.32080078125 +50.05,1477.2156982421875 +50.06,1477.1353759765625 +50.07,1477.0816650390625 +50.08,1477.039794921875 +50.09,1477.0054931640625 +50.1,1476.9974365234375 +50.11,1477.035888671875 +50.12,1477.078857421875 +50.13,1477.138671875 +50.14,1477.219482421875 +50.15,1477.30419921875 +50.16,1477.3907470703125 +50.17,1477.489501953125 +50.18,1477.59619140625 +50.19,1477.7042236328125 +50.2,1477.813720703125 +50.21,1477.924560546875 +50.22,1478.036865234375 +50.23,1478.1234130859375 +50.24,1478.176025390625 +50.25,1478.1826171875 +50.26,1478.1915283203125 +50.27,1478.2027587890625 +50.28,1478.2078857421875 +50.29,1478.215087890625 +50.3,1478.2059326171875 +50.31,1478.198974609375 +50.32,1478.2130126953125 +50.33,1478.2166748046875 +50.34,1478.222412109375 +50.35,1478.230224609375 +50.36,1478.2835693359375 +50.37,1478.340576171875 +50.38,1478.3990478515625 +50.39,1478.4818115234375 +50.4,1478.565673828125 +50.41,1478.634033203125 +50.42,1478.7222900390625 +50.43,1478.8052978515625 +50.44,1478.889404296875 +50.45,1478.9744873046875 +50.46,1479.05224609375 +50.47,1479.1309814453125 +50.48,1479.20654296875 +50.49,1479.27685546875 +50.5,1479.3480224609375 +50.51,1479.3994140625 +50.52,1479.4520263671875 +50.53,1479.5264892578125 +50.54,1479.601806640625 +50.55,1479.6572265625 +50.56,1479.7115478515625 +50.57,1479.7667236328125 +50.58,1479.822998046875 +50.59,1479.880126953125 +50.6,1479.9381103515625 +50.61,1479.9576416015625 +50.62,1479.95751953125 +50.63,1479.9464111328125 +50.64,1479.9326171875 +50.65,1479.9141845703125 +50.66,1479.8973388671875 +50.67,1479.873779296875 +50.68,1479.851806640625 +50.69,1479.8314208984375 +50.7,1479.8126220703125 +50.71,1479.7952880859375 +50.72,1479.7960205078125 +50.73,1479.8250732421875 +50.74,1479.898681640625 +50.75,1479.9810791015625 +50.76,1480.06396484375 +50.77,1480.147216796875 +50.78,1480.230712890625 +50.79,1480.3145751953125 +50.8,1480.3988037109375 +50.81,1480.4583740234375 +50.82,1480.5018310546875 +50.83,1480.5460205078125 +50.84,1480.580322265625 +50.85,1480.580078125 +50.86,1480.5704345703125 +50.87,1480.566162109375 +50.88,1480.558837890625 +50.89,1480.542236328125 +50.9,1480.514404296875 +50.91,1480.48583984375 +50.92,1480.3983154296875 +50.93,1480.2794189453125 +50.94,1480.150390625 +50.95,1479.965576171875 +50.96,1479.7733154296875 +50.97,1479.5550537109375 +50.98,1479.331787109375 +50.99,1479.1097412109375 +51,1478.8392333984375 +51.01,1478.555908203125 +51.02,1478.21240234375 +51.03,1477.859130859375 +51.04,1477.5084228515625 +51.05,1477.1314697265625 +51.06,1476.6995849609375 +51.07,1476.23193359375 +51.08,1475.7537841796875 +51.09,1475.2796630859375 +51.1,1474.809814453125 +51.11,1474.3192138671875 +51.12,1473.8165283203125 +51.13,1473.3204345703125 +51.14,1472.8309326171875 +51.15,1472.345947265625 +51.16,1471.867431640625 +51.17,1471.3955078125 +51.18,1470.9300537109375 +51.19,1470.4814453125 +51.2,1470.04541015625 +51.21,1469.6280517578125 +51.22,1469.21875 +51.23,1468.8155517578125 +51.24,1468.42236328125 +51.25,1468.0350341796875 +51.26,1467.6617431640625 +51.27,1467.2943115234375 +51.28,1466.9324951171875 +51.29,1466.5970458984375 +51.3,1466.2669677734375 +51.31,1465.942138671875 +51.32,1465.6226806640625 +51.33,1465.2733154296875 +51.34,1464.9439697265625 +51.35,1464.6014404296875 +51.36,1464.2706298828125 +51.37,1463.93896484375 +51.38,1463.606689453125 +51.39,1463.2694091796875 +51.4,1462.937744140625 +51.41,1462.594970703125 +51.42,1462.2371826171875 +51.43,1461.8748779296875 +51.44,1461.4915771484375 +51.45,1461.1123046875 +51.46,1460.693603515625 +51.47,1460.2791748046875 +51.48,1459.864990234375 +51.49,1459.455322265625 +51.5,1459.050048828125 +51.51,1458.6119384765625 +51.52,1458.1744384765625 +51.53,1457.74169921875 +51.54,1457.3011474609375 +51.55,1456.8675537109375 +51.56,1456.4407958984375 +51.57,1456.016845703125 +51.58,1455.5994873046875 +51.59,1455.18896484375 +51.6,1454.770751953125 +51.61,1454.359130859375 +51.62,1453.954345703125 +51.63,1453.5706787109375 +51.64,1453.193603515625 +51.65,1452.787841796875 +51.66,1452.388671875 +51.67,1452.0128173828125 +51.68,1451.6434326171875 +51.69,1451.299072265625 +51.7,1450.9630126953125 +51.71,1450.6329345703125 +51.72,1450.3089599609375 +51.73,1449.990966796875 +51.74,1449.6871337890625 +51.75,1449.3890380859375 +51.76,1449.098876953125 +51.77,1448.8162841796875 +51.78,1448.539306640625 +51.79,1448.2718505859375 +51.8,1448.01611328125 +51.81,1447.765625 +51.82,1447.5203857421875 +51.83,1447.2864990234375 +51.84,1447.0784912109375 +51.85,1446.875244140625 +51.86,1446.6768798828125 +51.87,1446.483154296875 +51.88,1446.3167724609375 +51.89,1446.1588134765625 +51.9,1446.01123046875 +51.91,1445.8677978515625 +51.92,1445.728515625 +51.93,1445.59521484375 +51.94,1445.47412109375 +51.95,1445.3692626953125 +51.96,1445.28466796875 +51.97,1445.18701171875 +51.98,1445.0927734375 +51.99,1444.9896240234375 +52,1444.9024658203125 +52.01,1444.818603515625 +52.02,1444.738037109375 +52.03,1444.6483154296875 +52.04,1444.5618896484375 +52.05,1444.478759765625 +52.06,1444.3988037109375 +52.07,1444.322021484375 +52.08,1444.2401123046875 +52.09,1444.134521484375 +52.1,1444.0323486328125 +52.11,1443.9273681640625 +52.12,1443.8258056640625 +52.13,1443.7130126953125 +52.14,1443.603759765625 +52.15,1443.489501953125 +52.16,1443.37451171875 +52.17,1443.262939453125 +52.18,1443.15478515625 +52.19,1443.0499267578125 +52.2,1442.931884765625 +52.21,1442.8172607421875 +52.22,1442.730712890625 +52.23,1442.65966796875 +52.24,1442.591552734375 +52.25,1442.559326171875 +52.26,1442.53369140625 +52.27,1442.5103759765625 +52.28,1442.4893798828125 +52.29,1442.505859375 +52.3,1442.5345458984375 +52.31,1442.5650634765625 +52.32,1442.6241455078125 +52.33,1442.6844482421875 +52.34,1442.7398681640625 +52.35,1442.796630859375 +52.36,1442.854736328125 +52.37,1442.9141845703125 +52.38,1442.9705810546875 +52.39,1443.0281982421875 +52.4,1443.0870361328125 +52.41,1443.0870361328125 +52.42,1443.043212890625 +52.43,1442.9871826171875 +52.44,1442.87548828125 +52.45,1442.7314453125 +52.46,1442.572021484375 +52.47,1442.3663330078125 +52.48,1442.1065673828125 +52.49,1441.78515625 +52.5,1441.46044921875 +52.51,1441.0933837890625 +52.52,1440.6595458984375 +52.53,1440.225830078125 +52.54,1439.7489013671875 +52.55,1439.278564453125 +52.56,1438.8150634765625 +52.57,1438.3582763671875 +52.58,1437.9080810546875 +52.59,1437.49755859375 +52.6,1437.097412109375 +52.61,1436.7073974609375 +52.62,1436.34423828125 +52.63,1436.0384521484375 +52.64,1435.741943359375 +52.65,1435.4794921875 +52.66,1435.232177734375 +52.67,1435.0101318359375 +52.68,1434.82958984375 +52.69,1434.6654052734375 +52.7,1434.533935546875 +52.71,1434.416259765625 +52.72,1434.322509765625 +52.73,1434.2318115234375 +52.74,1434.14599609375 +52.75,1434.0859375 +52.76,1434.038818359375 +52.77,1433.9984130859375 +52.78,1433.966552734375 +52.79,1433.9368896484375 +52.8,1433.9095458984375 +52.81,1433.8843994140625 +52.82,1433.8614501953125 +52.83,1433.8406982421875 +52.84,1433.8013916015625 +52.85,1433.7374267578125 +52.86,1433.667724609375 +52.87,1433.5634765625 +52.88,1433.4578857421875 +52.89,1433.355224609375 +52.9,1433.2513427734375 +52.91,1433.150390625 +52.92,1433.048095703125 +52.93,1432.9404296875 +52.94,1432.821044921875 +52.95,1432.66552734375 +52.96,1432.513427734375 +52.97,1432.3646240234375 +52.98,1432.2191162109375 +52.99,1432.076904296875 +53,1431.9378662109375 +53.01,1431.7813720703125 +53.02,1431.6490478515625 +53.03,1431.519775390625 +53.04,1431.3936767578125 +53.05,1431.2559814453125 +53.06,1431.1214599609375 +53.07,1430.9901123046875 +53.08,1430.8619384765625 +53.09,1430.728515625 +53.1,1430.59814453125 +53.11,1430.4708251953125 +53.12,1430.3466796875 +53.13,1430.2069091796875 +53.14,1430.0640869140625 +53.15,1429.90380859375 +53.16,1429.74267578125 +53.17,1429.5828857421875 +53.18,1429.4285888671875 +53.19,1429.277587890625 +53.2,1429.127685546875 +53.21,1428.9830322265625 +53.22,1428.8416748046875 +53.23,1428.7012939453125 +53.24,1428.566162109375 +53.25,1428.4342041015625 +53.26,1428.3114013671875 +53.27,1428.1915283203125 +53.28,1428.2213134765625 +53.29,1428.25244140625 +53.3,1428.284912109375 +53.31,1428.318603515625 +53.32,1428.3536376953125 +53.33,1428.389892578125 +53.34,1428.3983154296875 +53.35,1428.4083251953125 +53.36,1428.3865966796875 +53.37,1428.3665771484375 +53.38,1428.30908203125 +53.39,1428.2454833984375 +53.4,1428.183837890625 +53.41,1428.1243896484375 +53.42,1428.0670166015625 +53.43,1428.01171875 +53.44,1427.9398193359375 +53.45,1427.8184814453125 +53.46,1427.6978759765625 +53.47,1427.5777587890625 +53.48,1427.394287109375 +53.49,1427.19140625 +53.5,1426.988037109375 +53.51,1426.7757568359375 +53.52,1426.558837890625 +53.53,1426.232177734375 +53.54,1425.9000244140625 +53.55,1425.5377197265625 +53.56,1425.1209716796875 +53.57,1424.6708984375 +53.58,1424.2249755859375 +53.59,1423.7811279296875 +53.6,1423.33935546875 +53.61,1422.9017333984375 +53.62,1422.4189453125 +53.63,1421.9283447265625 +53.64,1421.444580078125 +53.65,1420.967529296875 +53.66,1420.4788818359375 +53.67,1419.9969482421875 +53.68,1419.5198974609375 +53.69,1419.0496826171875 +53.7,1418.5738525390625 +53.71,1418.1029052734375 +53.72,1417.6202392578125 +53.73,1417.1116943359375 +53.74,1416.6063232421875 +53.75,1416.1041259765625 +53.76,1415.6051025390625 +53.77,1415.1134033203125 +53.78,1414.6290283203125 +53.79,1414.15185546875 +53.8,1413.6817626953125 +53.81,1413.2230224609375 +53.82,1412.771240234375 +53.83,1412.3758544921875 +53.84,1411.9910888671875 +53.85,1411.63525390625 +53.86,1411.3514404296875 +53.87,1411.0914306640625 +53.88,1410.8385009765625 +53.89,1410.5906982421875 +53.9,1410.358154296875 +53.91,1410.1199951171875 +53.92,1409.88671875 +53.93,1409.6583251953125 +53.94,1409.4324951171875 +53.95,1409.186767578125 +53.96,1408.9129638671875 +53.97,1408.6444091796875 +53.98,1408.372802734375 +53.99,1408.10009765625 +54,1407.744140625 +54.01,1407.3634033203125 +54.02,1406.9849853515625 +54.03,1406.5120849609375 +54.04,1406.02587890625 +54.05,1405.4896240234375 +54.06,1404.9490966796875 +54.07,1404.406494140625 +54.08,1403.8720703125 +54.09,1403.3436279296875 +54.1,1402.8253173828125 +54.11,1402.3150634765625 +54.12,1401.812744140625 +54.13,1401.318359375 +54.14,1400.8319091796875 +54.15,1400.361328125 +54.16,1399.9046630859375 +54.17,1399.45556640625 +54.18,1399.0179443359375 +54.19,1398.60009765625 +54.2,1398.214111328125 +54.21,1397.8370361328125 +54.22,1397.466796875 +54.23,1397.1072998046875 +54.24,1396.7545166015625 +54.25,1396.408203125 +54.26,1396.062255859375 +54.27,1395.7186279296875 +54.28,1395.37939453125 +54.29,1395.046630859375 +54.3,1394.693603515625 +54.31,1394.316162109375 +54.32,1393.9312744140625 +54.33,1393.506103515625 +54.34,1393.075927734375 +54.35,1392.6346435546875 +54.36,1392.200927734375 +54.37,1391.774658203125 +54.38,1391.3558349609375 +54.39,1390.9588623046875 +54.4,1390.569091796875 +54.41,1390.1966552734375 +54.42,1389.8372802734375 +54.43,1389.531982421875 +54.44,1389.265869140625 +54.45,1389.112548828125 +54.46,1389.01318359375 +54.47,1388.9427490234375 +54.48,1388.92333984375 +54.49,1388.96875 +54.5,1389.0496826171875 +54.51,1389.1328125 +54.52,1389.2178955078125 +54.53,1389.304931640625 +54.54,1389.3939208984375 +54.55,1389.480712890625 +54.56,1389.565185546875 +54.57,1389.6124267578125 +54.58,1389.6495361328125 +54.59,1389.6600341796875 +54.6,1389.6627197265625 +54.61,1389.66796875 +54.62,1389.67578125 +54.63,1389.6859130859375 +54.64,1389.6820068359375 +54.65,1389.6806640625 +54.66,1389.677734375 +54.67,1389.664794921875 +54.68,1389.6195068359375 +54.69,1389.57080078125 +54.7,1389.516845703125 +54.71,1389.4349365234375 +54.72,1389.3458251953125 +54.73,1389.2476806640625 +54.74,1389.15283203125 +54.75,1389.054931640625 +54.76,1388.9212646484375 +54.77,1388.78515625 +54.78,1388.5992431640625 +54.79,1388.39697265625 +54.8,1388.131103515625 +54.81,1387.85986328125 +54.82,1387.587646484375 +54.83,1387.3101806640625 +54.84,1387.0357666015625 +54.85,1386.76025390625 +54.86,1386.48779296875 +54.87,1386.2060546875 +54.88,1385.929443359375 +54.89,1385.6435546875 +54.9,1385.3363037109375 +54.91,1385.05712890625 +54.92,1384.783203125 +54.93,1384.5142822265625 +54.94,1384.2506103515625 +54.95,1383.991943359375 +54.96,1383.73828125 +54.97,1383.4669189453125 +54.98,1383.2232666015625 +54.99,1382.9844970703125 +55,1382.715576171875 +55.01,1382.4517822265625 +55.02,1382.193115234375 +55.03,1381.9393310546875 +55.04,1381.711181640625 +55.05,1381.5 +55.06,1381.29541015625 +55.07,1381.09326171875 +55.08,1380.8955078125 +55.09,1380.7042236328125 +55.1,1380.5172119140625 +55.11,1380.33447265625 +55.12,1380.156005859375 +55.13,1379.981689453125 +55.14,1379.82373046875 +55.15,1379.669677734375 +55.16,1379.51953125 +55.17,1379.373291015625 +55.18,1379.2308349609375 +55.19,1379.07568359375 +55.2,1378.9244384765625 +55.21,1378.7708740234375 +55.22,1378.614990234375 +55.23,1378.4547119140625 +55.24,1378.29833984375 +55.25,1378.1436767578125 +55.26,1377.992919921875 +55.27,1377.845947265625 +55.28,1377.676025390625 +55.29,1377.4976806640625 +55.3,1377.3172607421875 +55.31,1377.140869140625 +55.32,1376.9541015625 +55.33,1376.771484375 +55.34,1376.609375 +55.35,1376.451171875 +55.36,1376.2967529296875 +55.37,1376.1461181640625 +55.38,1375.9991455078125 +55.39,1375.8558349609375 +55.4,1375.7161865234375 +55.41,1375.5802001953125 +55.42,1375.44775390625 +55.43,1375.3291015625 +55.44,1375.2156982421875 +55.45,1375.1055908203125 +55.46,1375.0028076171875 +55.47,1374.899169921875 +55.48,1374.796630859375 +55.49,1374.6971435546875 +55.5,1374.600830078125 +55.51,1374.5054931640625 +55.52,1374.3988037109375 +55.53,1374.295166015625 +55.54,1374.200927734375 +55.55,1374.1094970703125 +55.56,1374.0211181640625 +55.57,1373.935546875 +55.58,1373.852783203125 +55.59,1373.7811279296875 +55.6,1373.712158203125 +55.61,1373.67041015625 +55.62,1373.6373291015625 +55.63,1373.6002197265625 +55.64,1373.561279296875 +55.65,1373.504150390625 +55.66,1373.4493408203125 +55.67,1373.39697265625 +55.68,1373.3675537109375 +55.69,1373.34033203125 +55.7,1373.315185546875 +55.71,1373.2919921875 +55.72,1373.2708740234375 +55.73,1373.24755859375 +55.74,1373.226318359375 +55.75,1373.2069091796875 +55.76,1373.189453125 +55.77,1373.1739501953125 +55.78,1373.1376953125 +55.79,1373.1014404296875 +55.8,1373.04052734375 +55.81,1372.9757080078125 +55.82,1372.908935546875 +55.83,1372.81787109375 +55.84,1372.7252197265625 +55.85,1372.622802734375 +55.86,1372.52099609375 +55.87,1372.388916015625 +55.88,1372.21875 +55.89,1372.0478515625 +55.9,1371.8660888671875 +55.91,1371.6834716796875 +55.92,1371.453125 +55.93,1371.226806640625 +55.94,1371.00439453125 +55.95,1370.78173828125 +55.96,1370.5528564453125 +55.97,1370.3280029296875 +55.98,1370.10498046875 +55.99,1369.8858642578125 +56,1369.670654296875 +56.01,1369.459228515625 +56.02,1369.251708984375 +56.03,1369.0479736328125 +56.04,1368.8460693359375 +56.05,1368.64794921875 +56.06,1368.4473876953125 +56.07,1368.2506103515625 +56.08,1368.0574951171875 +56.09,1367.8680419921875 +56.1,1367.688232421875 +56.11,1367.505859375 +56.12,1367.31689453125 +56.13,1367.131591796875 +56.14,1366.9498291015625 +56.15,1366.77783203125 +56.16,1366.637939453125 +56.17,1366.499267578125 +56.18,1366.36572265625 +56.19,1366.2352294921875 +56.2,1366.1324462890625 +56.21,1366.034423828125 +56.22,1365.9371337890625 +56.23,1365.8424072265625 +56.24,1365.7503662109375 +56.25,1365.6588134765625 +56.26,1365.56982421875 +56.27,1365.477294921875 +56.28,1365.358642578125 +56.29,1365.2427978515625 +56.3,1365.12158203125 +56.31,1365.003173828125 +56.32,1364.8814697265625 +56.33,1364.7626953125 +56.34,1364.6385498046875 +56.35,1364.517333984375 +56.36,1364.3763427734375 +56.37,1364.2384033203125 +56.38,1364.099365234375 +56.39,1363.9449462890625 +56.4,1363.7855224609375 +56.41,1363.6292724609375 +56.42,1363.47216796875 +56.43,1363.314208984375 +56.44,1363.151123046875 +56.45,1362.9853515625 +56.46,1362.7921142578125 +56.47,1362.5860595703125 +56.48,1362.400146484375 +56.49,1362.2012939453125 +56.5,1362.0020751953125 +56.51,1361.804443359375 +56.52,1361.5941162109375 +56.53,1361.3834228515625 +56.54,1361.1744384765625 +56.55,1360.963134765625 +56.56,1360.7474365234375 +56.57,1360.53564453125 +56.58,1360.32763671875 +56.59,1360.1070556640625 +56.6,1359.88427734375 +56.61,1359.663330078125 +56.62,1359.43408203125 +56.63,1359.1700439453125 +56.64,1358.9041748046875 +56.65,1358.60595703125 +56.66,1358.2900390625 +56.67,1357.9708251953125 +56.68,1357.6485595703125 +56.69,1357.3232421875 +56.7,1356.9927978515625 +56.71,1356.6571044921875 +56.72,1356.316650390625 +56.73,1355.932373046875 +56.74,1355.5211181640625 +56.75,1355.0648193359375 +56.76,1354.60498046875 +56.77,1354.1334228515625 +56.78,1353.64208984375 +56.79,1353.1556396484375 +56.8,1352.670166015625 +56.81,1352.179443359375 +56.82,1351.69189453125 +56.83,1351.201171875 +56.84,1350.70947265625 +56.85,1350.21484375 +56.86,1349.723388671875 +56.87,1349.2391357421875 +56.88,1348.7662353515625 +56.89,1348.3004150390625 +56.9,1347.847900390625 +56.91,1347.4066162109375 +56.92,1347.01513671875 +56.93,1346.632080078125 +56.94,1346.27783203125 +56.95,1345.931640625 +56.96,1345.634521484375 +56.97,1345.346923828125 +56.98,1345.09130859375 +56.99,1344.857177734375 +57,1344.6605224609375 +57.01,1344.480712890625 +57.02,1344.364501953125 +57.03,1344.2662353515625 +57.04,1344.175537109375 +57.05,1344.126953125 +57.06,1344.081298828125 +57.07,1344.03857421875 +57.08,1344.0107421875 +57.09,1343.985595703125 +57.1,1343.9630126953125 +57.11,1343.92236328125 +57.12,1343.884521484375 +57.13,1343.832763671875 +57.14,1343.775634765625 +57.15,1343.67626953125 +57.16,1343.5718994140625 +57.17,1343.462646484375 +57.18,1343.3360595703125 +57.19,1343.2110595703125 +57.2,1343.0731201171875 +57.21,1342.912109375 +57.22,1342.750732421875 +57.23,1342.5706787109375 +57.24,1342.39453125 +57.25,1342.222412109375 +57.26,1342.0460205078125 +57.27,1341.87353515625 +57.28,1341.692626953125 +57.29,1341.5074462890625 +57.3,1341.305908203125 +57.31,1341.1085205078125 +57.32,1340.905029296875 +57.33,1340.675048828125 +57.34,1340.4495849609375 +57.35,1340.228515625 +57.36,1340.0118408203125 +57.37,1339.8363037109375 +57.38,1339.66455078125 +57.39,1339.4967041015625 +57.4,1339.3367919921875 +57.41,1339.197021484375 +57.42,1339.0750732421875 +57.43,1338.9666748046875 +57.44,1338.8614501953125 +57.45,1338.7921142578125 +57.46,1338.7276611328125 +57.47,1338.665771484375 +57.48,1338.6290283203125 +57.49,1338.5721435546875 +57.5,1338.5179443359375 +57.51,1338.4642333984375 +57.52,1338.4027099609375 +57.53,1338.3438720703125 +57.54,1338.2874755859375 +57.55,1338.2274169921875 +57.56,1338.169921875 +57.57,1338.11083984375 +57.58,1338.05419921875 +57.59,1337.9468994140625 +57.6,1337.83837890625 +57.61,1337.728759765625 +57.62,1337.5975341796875 +57.63,1337.4326171875 +57.64,1337.259033203125 +57.65,1337.033935546875 +57.66,1336.8006591796875 +57.67,1336.4183349609375 +57.68,1336.0418701171875 +57.69,1335.6712646484375 +57.7,1335.2838134765625 +57.71,1334.887939453125 +57.72,1334.4757080078125 +57.73,1334.069580078125 +57.74,1333.669677734375 +57.75,1333.2696533203125 +57.76,1332.8758544921875 +57.77,1332.486083984375 +57.78,1332.1043701171875 +57.79,1331.726806640625 +57.8,1331.3551025390625 +57.81,1330.9893798828125 +57.82,1330.629638671875 +57.83,1330.2757568359375 +57.84,1329.9276123046875 +57.85,1329.585205078125 +57.86,1329.2506103515625 +57.87,1328.921630859375 +57.88,1328.6309814453125 +57.89,1328.34765625 +57.9,1328.1123046875 +57.91,1327.8919677734375 +57.92,1327.6822509765625 +57.93,1327.5074462890625 +57.94,1327.369384765625 +57.95,1327.239013671875 +57.96,1327.120361328125 +57.97,1327.0155029296875 +57.98,1326.9158935546875 +57.99,1326.819580078125 +58,1326.7406005859375 +58.01,1326.6810302734375 +58.02,1326.63232421875 +58.03,1326.582275390625 +58.04,1326.5347900390625 +58.05,1326.48583984375 +58.06,1326.439453125 +58.07,1326.38330078125 +58.08,1326.3258056640625 +58.09,1326.2464599609375 +58.1,1326.1617431640625 +58.11,1326.079833984375 +58.12,1325.990478515625 +58.13,1325.902099609375 +58.14,1325.7940673828125 +58.15,1325.6871337890625 +58.16,1325.5831298828125 +58.17,1325.4678955078125 +58.18,1325.353759765625 +58.19,1325.214111328125 +58.2,1325.0675048828125 +58.21,1324.9244384765625 +58.22,1324.7459716796875 +58.23,1324.56103515625 +58.24,1324.3697509765625 +58.25,1324.1822509765625 +58.26,1323.9986572265625 +58.27,1323.8189697265625 +58.28,1323.64501953125 +58.29,1323.4788818359375 +58.3,1323.3162841796875 +58.31,1323.1920166015625 +58.32,1323.0811767578125 +58.33,1322.973388671875 +58.34,1322.8685302734375 +58.35,1322.7667236328125 +58.36,1322.6678466796875 +58.37,1322.565673828125 +58.38,1322.46435546875 +58.39,1322.33935546875 +58.4,1322.19091796875 +58.41,1322.039794921875 +58.42,1321.8736572265625 +58.43,1321.7049560546875 +58.44,1321.5377197265625 +58.45,1321.367919921875 +58.46,1321.20166015625 +58.47,1321.03271484375 +58.48,1320.867431640625 +58.49,1320.7076416015625 +58.5,1320.5513916015625 +58.51,1320.410888671875 +58.52,1320.30419921875 +58.53,1320.235107421875 +58.54,1320.1685791015625 +58.55,1320.120849609375 +58.56,1320.0753173828125 +58.57,1320.042236328125 +58.58,1320.0133056640625 +58.59,1319.9842529296875 +58.6,1319.9307861328125 +58.61,1319.87548828125 +58.62,1319.814208984375 +58.63,1319.7552490234375 +58.64,1319.684326171875 +58.65,1319.61572265625 +58.66,1319.52099609375 +58.67,1319.4083251953125 +58.68,1319.290283203125 +58.69,1319.160888671875 +58.7,1319.034423828125 +58.71,1318.910888671875 +58.72,1318.7841796875 +58.73,1318.6502685546875 +58.74,1318.519287109375 +58.75,1318.3912353515625 +58.76,1318.24560546875 +58.77,1318.1031494140625 +58.78,1317.9617919921875 +58.79,1317.8172607421875 +58.8,1317.655517578125 +58.81,1317.492919921875 +58.82,1317.3336181640625 +58.83,1317.16943359375 +58.84,1316.994140625 +58.85,1316.8223876953125 +58.86,1316.6539306640625 +58.87,1316.48876953125 +58.88,1316.3270263671875 +58.89,1316.16845703125 +58.9,1316.0050048828125 +58.91,1315.8408203125 +58.92,1315.679931640625 +58.93,1315.520263671875 +58.94,1315.3555908203125 +58.95,1315.188232421875 +58.96,1315.005859375 +58.97,1314.8004150390625 +58.98,1314.5987548828125 +58.99,1314.38037109375 +59,1314.1617431640625 +59.01,1313.947021484375 +59.02,1313.736083984375 +59.03,1313.5086669921875 +59.04,1313.2689208984375 +59.05,1313.025146484375 +59.06,1312.771240234375 +59.07,1312.5032958984375 +59.08,1312.2215576171875 +59.09,1311.9423828125 +59.1,1311.6431884765625 +59.11,1311.3387451171875 +59.12,1311.0308837890625 +59.13,1310.7178955078125 +59.14,1310.40576171875 +59.15,1310.0762939453125 +59.16,1309.7479248046875 +59.17,1309.4227294921875 +59.18,1309.0802001953125 +59.19,1308.7391357421875 +59.2,1308.3707275390625 +59.21,1307.9794921875 +59.22,1307.580078125 +59.23,1307.17041015625 +59.24,1306.7220458984375 +59.25,1306.2720947265625 +59.26,1305.7962646484375 +59.27,1305.327392578125 +59.28,1304.843017578125 +59.29,1304.3515625 +59.3,1303.8612060546875 +59.31,1303.3719482421875 +59.32,1302.889892578125 +59.33,1302.398681640625 +59.34,1301.90869140625 +59.35,1301.421875 +59.36,1300.9241943359375 +59.37,1300.433837890625 +59.38,1299.950927734375 +59.39,1299.4754638671875 +59.4,1299.0072021484375 +59.41,1298.5401611328125 +59.42,1298.080322265625 +59.43,1297.625732421875 +59.44,1297.1783447265625 +59.45,1296.73388671875 +59.46,1296.284423828125 +59.47,1295.850341796875 +59.48,1295.4151611328125 +59.49,1294.98095703125 +59.5,1294.5537109375 +59.51,1294.1397705078125 +59.52,1293.732666015625 +59.53,1293.340576171875 +59.54,1292.9571533203125 +59.55,1292.5865478515625 +59.56,1292.2244873046875 +59.57,1291.8831787109375 +59.58,1291.5604248046875 +59.59,1291.2537841796875 +59.6,1290.96533203125 +59.61,1290.6947021484375 +59.62,1290.4683837890625 +59.63,1290.253173828125 +59.64,1290.044921875 +59.65,1289.8680419921875 +59.66,1289.6998291015625 +59.67,1289.5421142578125 +59.68,1289.388671875 +59.69,1289.239501953125 +59.7,1289.10888671875 +59.71,1288.9781494140625 +59.72,1288.859619140625 +59.73,1288.7469482421875 +59.74,1288.6380615234375 +59.75,1288.545166015625 +59.76,1288.455810546875 +59.77,1288.3699951171875 +59.78,1288.28759765625 +59.79,1288.1983642578125 +59.8,1288.1226806640625 +59.81,1288.066650390625 +59.82,1288.0035400390625 +59.83,1287.9373779296875 +59.84,1287.8642578125 +59.85,1287.7840576171875 +59.86,1287.70703125 +59.87,1287.63330078125 +59.88,1287.5504150390625 +59.89,1287.4647216796875 +59.9,1287.3720703125 +59.91,1287.28271484375 +59.92,1287.1884765625 +59.93,1287.08935546875 +59.94,1286.9853515625 +59.95,1286.8441162109375 +59.96,1286.6922607421875 +59.97,1286.544189453125 +59.98,1286.389892578125 +59.99,1286.233154296875 +60,1286.045654296875 +60.01,1285.84619140625 +60.02,1285.64892578125 +60.03,1285.3968505859375 +60.04,1285.13134765625 +60.05,1284.8504638671875 +60.06,1284.5687255859375 +60.07,1284.1966552734375 +60.08,1283.8204345703125 +60.09,1283.440185546875 +60.1,1283.03369140625 +60.11,1282.6011962890625 +60.12,1282.1512451171875 +60.13,1281.7000732421875 +60.14,1281.24169921875 +60.15,1280.761962890625 +60.16,1280.2572021484375 +60.17,1279.7540283203125 +60.18,1279.234130859375 +60.19,1278.7220458984375 +60.2,1278.2177734375 +60.21,1277.709228515625 +60.22,1277.20849609375 +60.23,1276.7276611328125 +60.24,1276.25439453125 +60.25,1275.831298828125 +60.26,1275.415283203125 +60.27,1275.0123291015625 +60.28,1274.622314453125 +60.29,1274.2410888671875 +60.3,1273.8807373046875 +60.31,1273.5736083984375 +60.32,1273.2742919921875 +60.33,1272.9891357421875 +60.34,1272.7095947265625 +60.35,1272.449951171875 +60.36,1272.2080078125 +60.37,1271.975341796875 +60.38,1271.812744140625 +60.39,1271.675048828125 +60.4,1271.54541015625 +60.41,1271.423828125 +60.42,1271.3104248046875 +60.43,1271.200927734375 +60.44,1271.0972900390625 +60.45,1270.999267578125 +60.46,1270.906982421875 +60.47,1270.826416015625 +60.48,1270.749267578125 +60.49,1270.66748046875 +60.5,1270.5869140625 +60.51,1270.509765625 +60.52,1270.4339599609375 +60.53,1270.2801513671875 +60.54,1270.1060791015625 +60.55,1269.895751953125 +60.56,1269.68603515625 +60.57,1269.440185546875 +60.58,1269.1973876953125 +60.59,1268.9473876953125 +60.6,1268.67822265625 +60.61,1268.3818359375 +60.62,1268.0523681640625 +60.63,1267.70654296875 +60.64,1267.3363037109375 +60.65,1266.944091796875 +60.66,1266.5421142578125 +60.67,1266.12451171875 +60.68,1265.7138671875 +60.69,1265.2958984375 +60.7,1264.884765625 +60.71,1264.4744873046875 +60.72,1264.0528564453125 +60.73,1263.6280517578125 +60.74,1263.1981201171875 +60.75,1262.7752685546875 +60.76,1262.357421875 +60.77,1261.9466552734375 +60.78,1261.5428466796875 +60.79,1261.1458740234375 +60.8,1260.755859375 +60.81,1260.37255859375 +60.82,1259.99609375 +60.83,1259.63037109375 +60.84,1259.2794189453125 +60.85,1258.94287109375 +60.86,1258.649169921875 +60.87,1258.379638671875 +60.88,1258.1156005859375 +60.89,1257.8631591796875 +60.9,1257.620361328125 +60.91,1257.388916015625 +60.92,1257.1707763671875 +60.93,1256.9658203125 +60.94,1256.781982421875 +60.95,1256.619140625 +60.96,1256.4647216796875 +60.97,1256.3370361328125 +60.98,1256.2215576171875 +60.99,1256.1202392578125 +61,1256.0531005859375 +61.01,1255.99951171875 +61.02,1255.951171875 +61.03,1255.912109375 +61.04,1255.8760986328125 +61.05,1255.8489990234375 +61.06,1255.81884765625 +61.07,1255.8037109375 +61.08,1255.791259765625 +61.09,1255.769287109375 +61.1,1255.7459716796875 +61.11,1255.672607421875 +61.12,1255.59033203125 +61.13,1255.50927734375 +61.14,1255.3868408203125 +61.15,1255.247802734375 +61.16,1255.1085205078125 +61.17,1254.9710693359375 +61.18,1254.8251953125 +61.19,1254.6446533203125 +61.2,1254.4014892578125 +61.21,1254.1368408203125 +61.22,1253.8670654296875 +61.23,1253.6025390625 +61.24,1253.3248291015625 +61.25,1253.0443115234375 +61.26,1252.74267578125 +61.27,1252.434326171875 +61.28,1252.131591796875 +61.29,1251.8262939453125 +61.3,1251.5103759765625 +61.31,1251.1939697265625 +61.32,1250.88330078125 +61.33,1250.5660400390625 +61.34,1250.228271484375 +61.35,1249.880126953125 +61.36,1249.5340576171875 +61.37,1249.1878662109375 +61.38,1248.82958984375 +61.39,1248.4775390625 +61.4,1248.1314697265625 +61.41,1247.78955078125 +61.42,1247.44970703125 +61.43,1247.1077880859375 +61.44,1246.7496337890625 +61.45,1246.3917236328125 +61.46,1246.02587890625 +61.47,1245.6663818359375 +61.48,1245.3131103515625 +61.49,1244.964111328125 +61.5,1244.621337890625 +61.51,1244.28466796875 +61.52,1243.9542236328125 +61.53,1243.6175537109375 +61.54,1243.287109375 +61.55,1242.962646484375 +61.56,1242.61376953125 +61.57,1242.271240234375 +61.58,1241.9349365234375 +61.59,1241.604736328125 +61.6,1241.288818359375 +61.61,1240.9788818359375 +61.62,1240.6849365234375 +61.63,1240.4007568359375 +61.64,1240.1221923828125 +61.65,1239.8492431640625 +61.66,1239.595947265625 +61.67,1239.3480224609375 +61.68,1239.1072998046875 +61.69,1238.885986328125 +61.7,1238.6796875 +61.71,1238.492431640625 +61.72,1238.3260498046875 +61.73,1238.1802978515625 +61.74,1238.0589599609375 +61.75,1237.9637451171875 +61.76,1237.896484375 +61.77,1237.83251953125 +61.78,1237.798095703125 +61.79,1237.772705078125 +61.8,1237.7581787109375 +61.81,1237.7606201171875 +61.82,1237.7777099609375 +61.83,1237.797119140625 +61.84,1237.8167724609375 +61.85,1237.8406982421875 +61.86,1237.8809814453125 +61.87,1237.908935546875 +61.88,1237.93896484375 +61.89,1237.9852294921875 +61.9,1238.01708984375 +61.91,1238.0509033203125 +61.92,1238.0926513671875 +61.93,1238.1361083984375 +61.94,1238.1812744140625 +61.95,1238.2281494140625 +61.96,1238.2767333984375 +61.97,1238.3267822265625 +61.98,1238.3724365234375 +61.99,1238.419677734375 +62,1238.444091796875 +62.01,1238.4700927734375 +62.02,1238.4837646484375 +62.03,1238.499267578125 +62.04,1238.5164794921875 +62.05,1238.535400390625 +62.06,1238.5560302734375 +62.07,1238.5782470703125 +62.08,1238.60205078125 +62.09,1238.6275634765625 +62.1,1238.654541015625 +62.11,1238.65869140625 +62.12,1238.66455078125 +62.13,1238.672119140625 +62.14,1238.6812744140625 +62.15,1238.7042236328125 +62.16,1238.7286376953125 +62.17,1238.75439453125 +62.18,1238.7694091796875 +62.19,1238.7777099609375 +62.2,1238.7877197265625 +62.21,1238.782958984375 +62.22,1238.775634765625 +62.23,1238.755859375 +62.24,1238.7196044921875 +62.25,1238.673095703125 +62.26,1238.5657958984375 +62.27,1238.448974609375 +62.28,1238.2801513671875 +62.29,1238.0457763671875 +62.3,1237.787109375 +62.31,1237.50830078125 +62.32,1237.1590576171875 +62.33,1236.7139892578125 +62.34,1236.216552734375 +62.35,1235.7198486328125 +62.36,1235.20361328125 +62.37,1234.6842041015625 +62.38,1234.1617431640625 +62.39,1233.646484375 +62.4,1233.1383056640625 +62.41,1232.63720703125 +62.42,1232.1431884765625 +62.43,1231.6561279296875 +62.44,1231.2164306640625 +62.45,1230.7933349609375 +62.46,1230.380615234375 +62.47,1229.98828125 +62.48,1229.656494140625 +62.49,1229.3443603515625 +62.5,1229.0435791015625 +62.51,1228.7681884765625 +62.52,1228.501708984375 +62.53,1228.262451171875 +62.54,1228.03369140625 +62.55,1227.83154296875 +62.56,1227.643798828125 +62.57,1227.4842529296875 +62.58,1227.33447265625 +62.59,1227.1884765625 +62.6,1227.0460205078125 +62.61,1226.9232177734375 +62.62,1226.8038330078125 +62.63,1226.6978759765625 +62.64,1226.594970703125 +62.65,1226.4952392578125 +62.66,1226.3883056640625 +62.67,1226.2845458984375 +62.68,1226.1939697265625 +62.69,1226.104248046875 +62.7,1226.0174560546875 +62.71,1225.93359375 +62.72,1225.816162109375 +62.73,1225.6956787109375 +62.74,1225.5784912109375 +62.75,1225.46435546875 +62.76,1225.347412109375 +62.77,1225.223388671875 +62.78,1225.1005859375 +62.79,1224.9830322265625 +62.8,1224.8685302734375 +62.81,1224.757080078125 +62.82,1224.648681640625 +62.83,1224.5372314453125 +62.84,1224.4146728515625 +62.85,1224.2650146484375 +62.86,1224.100341796875 +62.87,1223.9393310546875 +62.88,1223.7799072265625 +62.89,1223.623779296875 +62.9,1223.4732666015625 +62.91,1223.3260498046875 +62.92,1223.1903076171875 +62.93,1223.0498046875 +62.94,1222.9124755859375 +62.95,1222.766357421875 +62.96,1222.62353515625 +62.97,1222.4920654296875 +62.98,1222.355712890625 +62.99,1222.22265625 +63,1222.086669921875 +63.01,1221.939697265625 +63.02,1221.7900390625 +63.03,1221.6356201171875 +63.04,1221.478515625 +63.05,1221.2823486328125 +63.06,1221.06982421875 +63.07,1220.861328125 +63.08,1220.638671875 +63.09,1220.391845703125 +63.1,1220.13720703125 +63.11,1219.87890625 +63.12,1219.5684814453125 +63.13,1219.224853515625 +63.14,1218.822021484375 +63.15,1218.4071044921875 +63.16,1217.951904296875 +63.17,1217.4710693359375 +63.18,1216.9710693359375 +63.19,1216.4478759765625 +63.2,1215.9281005859375 +63.21,1215.4156494140625 +63.22,1214.91064453125 +63.23,1214.4129638671875 +63.24,1213.9224853515625 +63.25,1213.44140625 +63.26,1213.001708984375 +63.27,1212.5888671875 +63.28,1212.2633056640625 +63.29,1211.9615478515625 +63.3,1211.7073974609375 +63.31,1211.46435546875 +63.32,1211.234130859375 +63.33,1211.101318359375 +63.34,1211.00244140625 +63.35,1210.9271240234375 +63.36,1210.8709716796875 +63.37,1210.817626953125 +63.38,1210.76708984375 +63.39,1210.7071533203125 +63.4,1210.6622314453125 +63.41,1210.6077880859375 +63.42,1210.5560302734375 +63.43,1210.5191650390625 +63.44,1210.484619140625 +63.45,1210.4586181640625 +63.46,1210.43701171875 +63.47,1210.4178466796875 +63.48,1210.4007568359375 +63.49,1210.385986328125 +63.5,1210.38134765625 +63.51,1210.3707275390625 +63.52,1210.35009765625 +63.53,1210.32763671875 +63.54,1210.264892578125 +63.55,1210.1783447265625 +63.56,1210.064453125 +63.57,1209.9091796875 +63.58,1209.7271728515625 +63.59,1209.5428466796875 +63.6,1209.2816162109375 +63.61,1209.0208740234375 +63.62,1208.7586669921875 +63.63,1208.47900390625 +63.64,1208.1739501953125 +63.65,1207.8416748046875 +63.66,1207.488525390625 +63.67,1207.1248779296875 +63.68,1206.7366943359375 +63.69,1206.3544921875 +63.7,1205.978271484375 +63.71,1205.60595703125 +63.72,1205.2396240234375 +63.73,1204.879150390625 +63.74,1204.5203857421875 +63.75,1204.165283203125 +63.76,1203.8160400390625 +63.77,1203.474609375 +63.78,1203.1387939453125 +63.79,1202.806640625 +63.8,1202.4801025390625 +63.81,1202.1590576171875 +63.82,1201.8375244140625 +63.83,1201.521484375 +63.84,1201.1988525390625 +63.85,1200.8778076171875 +63.86,1200.562255859375 +63.87,1200.2401123046875 +63.88,1199.9356689453125 +63.89,1199.63671875 +63.9,1199.3470458984375 +63.91,1199.0748291015625 +63.92,1198.8238525390625 +63.93,1198.603759765625 +63.94,1198.390380859375 +63.95,1198.1815185546875 +63.96,1197.97705078125 +63.97,1197.787109375 +63.98,1197.6014404296875 +63.99,1197.4259033203125 +64,1197.2725830078125 +64.01,1197.141357421875 +64.02,1197.017822265625 +64.03,1196.87548828125 +64.04,1196.7591552734375 +64.05,1196.6563720703125 +64.06,1196.556884765625 +64.07,1196.470703125 +64.08,1196.3775634765625 +64.09,1196.3016357421875 +64.1,1196.214599609375 +64.11,1196.1710205078125 +64.12,1196.1300048828125 +64.13,1196.0914306640625 +64.14,1196.055419921875 +64.15,1196.02587890625 +64.16,1195.998779296875 +64.17,1195.9962158203125 +64.18,1195.9957275390625 +64.19,1195.9971923828125 +64.2,1196.0006103515625 +64.21,1196.0059814453125 +64.22,1196.00927734375 +64.23,1195.9700927734375 +64.24,1195.9171142578125 +64.25,1195.8524169921875 +64.26,1195.790283203125 +64.27,1195.7266845703125 +64.28,1195.6634521484375 +64.29,1195.5987548828125 +64.3,1195.5325927734375 +64.31,1195.466796875 +64.32,1195.387451171875 +64.33,1195.3106689453125 +64.34,1195.2083740234375 +64.35,1195.088623046875 +64.36,1194.9718017578125 +64.37,1194.85400390625 +64.38,1194.7030029296875 +64.39,1194.55126953125 +64.4,1194.390869140625 +64.41,1194.23388671875 +64.42,1194.0721435546875 +64.43,1193.899658203125 +64.44,1193.7227783203125 +64.45,1193.5211181640625 +64.46,1193.3233642578125 +64.47,1193.1092529296875 +64.48,1192.8970947265625 +64.49,1192.602294921875 +64.5,1192.308349609375 +64.51,1191.97900390625 +64.52,1191.6265869140625 +64.53,1191.25146484375 +64.54,1190.8740234375 +64.55,1190.47216796875 +64.56,1190.05419921875 +64.57,1189.606201171875 +64.58,1189.138671875 +64.59,1188.6759033203125 +64.6,1188.2059326171875 +64.61,1187.724609375 +64.62,1187.236328125 +64.63,1186.73095703125 +64.64,1186.23095703125 +64.65,1185.732177734375 +64.66,1185.224609375 +64.67,1184.7183837890625 +64.68,1184.211669921875 +64.69,1183.7044677734375 +64.7,1183.1826171875 +64.71,1182.66845703125 +64.72,1182.1619873046875 +64.73,1181.6611328125 +64.74,1181.1636962890625 +64.75,1180.677978515625 +64.76,1180.19970703125 +64.77,1179.7288818359375 +64.78,1179.2713623046875 +64.79,1178.8211669921875 +64.8,1178.378173828125 +64.81,1177.9423828125 +64.82,1177.5196533203125 +64.83,1177.1058349609375 +64.84,1176.7049560546875 +64.85,1176.3109130859375 +64.86,1175.9237060546875 +64.87,1175.547119140625 +64.88,1175.193115234375 +64.89,1174.8475341796875 +64.9,1174.518310546875 +64.91,1174.19921875 +64.92,1173.8861083984375 +64.93,1173.594970703125 +64.94,1173.3116455078125 +64.95,1173.0460205078125 +64.96,1172.7938232421875 +64.97,1172.549072265625 +64.98,1172.3197021484375 +64.99,1172.1195068359375 +65,1171.954345703125 +65.01,1171.79345703125 +65.02,1171.636962890625 +65.03,1171.49072265625 +65.04,1171.3487548828125 +65.05,1171.2349853515625 +65.06,1171.1251220703125 +65.07,1171.009033203125 +65.08,1170.8826904296875 +65.09,1170.7542724609375 +65.1,1170.629638671875 +65.11,1170.5089111328125 +65.12,1170.3719482421875 +65.13,1170.2288818359375 +65.14,1170.083740234375 +65.15,1169.9326171875 +65.16,1169.779541015625 +65.17,1169.6103515625 +65.18,1169.4415283203125 +65.19,1169.2628173828125 +65.2,1169.0885009765625 +65.21,1168.91650390625 +65.22,1168.748779296875 +65.23,1168.5731201171875 +65.24,1168.3935546875 +65.25,1168.2183837890625 +65.26,1168.0474853515625 +65.27,1167.8023681640625 +65.28,1167.5321044921875 +65.29,1167.2530517578125 +65.3,1166.9652099609375 +65.31,1166.638671875 +65.32,1166.303955078125 +65.33,1165.965087890625 +65.34,1165.5999755859375 +65.35,1165.2391357421875 +65.36,1164.868408203125 +65.37,1164.4580078125 +65.38,1164.05224609375 +65.39,1163.6512451171875 +65.4,1163.2528076171875 +65.41,1162.8551025390625 +65.42,1162.4500732421875 +65.43,1162.0518798828125 +65.44,1161.65234375 +65.45,1161.267578125 +65.46,1160.889404296875 +65.47,1160.5118408203125 +65.48,1160.1387939453125 +65.49,1159.7742919921875 +65.5,1159.416259765625 +65.51,1159.0745849609375 +65.52,1158.7412109375 +65.53,1158.4139404296875 +65.54,1158.080810546875 +65.55,1157.75390625 +65.56,1157.4490966796875 +65.57,1157.1502685546875 +65.58,1156.857177734375 +65.59,1156.56982421875 +65.6,1156.288330078125 +65.61,1156.0164794921875 +65.62,1155.752197265625 +65.63,1155.4932861328125 +65.64,1155.2379150390625 +65.65,1154.9818115234375 +65.66,1154.731201171875 +65.67,1154.4818115234375 +65.68,1154.189697265625 +65.69,1153.865234375 +65.7,1153.540771484375 +65.71,1153.184326171875 +65.72,1152.788330078125 +65.73,1152.3751220703125 +65.74,1151.932861328125 +65.75,1151.453857421875 +65.76,1150.960693359375 +65.77,1150.475341796875 +65.78,1149.9879150390625 +65.79,1149.5064697265625 +65.8,1149.0328369140625 +65.81,1148.569091796875 +65.82,1148.123046875 +65.83,1147.6925048828125 +65.84,1147.2694091796875 +65.85,1146.8818359375 +65.86,1146.5291748046875 +65.87,1146.2314453125 +65.88,1145.94384765625 +65.89,1145.7142333984375 +65.9,1145.4920654296875 +65.91,1145.2811279296875 +65.92,1145.075439453125 +65.93,1144.8748779296875 +65.94,1144.69140625 +65.95,1144.500732421875 +65.96,1144.3150634765625 +65.97,1144.1341552734375 +65.98,1143.9521484375 +65.99,1143.781005859375 +66,1143.6143798828125 +66.01,1143.4664306640625 +66.02,1143.3270263671875 +66.03,1143.19189453125 +66.04,1143.085205078125 +66.05,1142.984375 +66.06,1142.9034423828125 +66.07,1142.8321533203125 +66.08,1142.766357421875 +66.09,1142.7100830078125 +66.1,1142.6832275390625 +66.11,1142.681396484375 +66.12,1142.6883544921875 +66.13,1142.701904296875 +66.14,1142.7440185546875 +66.15,1142.8023681640625 +66.16,1142.8626708984375 +66.17,1142.9249267578125 +66.18,1142.989013671875 +66.19,1143.054931640625 +66.2,1143.1226806640625 +66.21,1143.1619873046875 +66.22,1143.197265625 +66.23,1143.202392578125 +66.24,1143.209716796875 +66.25,1143.2193603515625 +66.26,1143.25927734375 +66.27,1143.304931640625 +66.28,1143.3583984375 +66.29,1143.4556884765625 +66.3,1143.5540771484375 +66.31,1143.653564453125 +66.32,1143.754150390625 +66.33,1143.8035888671875 +66.34,1143.8165283203125 +66.35,1143.8072509765625 +66.36,1143.7979736328125 +66.37,1143.790771484375 +66.38,1143.7335205078125 +66.39,1143.6607666015625 +66.4,1143.5906982421875 +66.41,1143.5172119140625 +66.42,1143.4464111328125 +66.43,1143.378173828125 +66.44,1143.3125 +66.45,1143.2353515625 +66.46,1143.1387939453125 +66.47,1143.0450439453125 +66.48,1142.8939208984375 +66.49,1142.710205078125 +66.5,1142.5201416015625 +66.51,1142.287841796875 +66.52,1142.0517578125 +66.53,1141.7598876953125 +66.54,1141.46484375 +66.55,1141.138671875 +66.56,1140.815673828125 +66.57,1140.491943359375 +66.58,1140.1734619140625 +66.59,1139.8541259765625 +66.6,1139.5299072265625 +66.61,1139.20703125 +66.62,1138.87353515625 +66.63,1138.5413818359375 +66.64,1138.2105712890625 +66.65,1137.8851318359375 +66.66,1137.567138671875 +66.67,1137.25439453125 +66.68,1136.947021484375 +66.69,1136.6448974609375 +66.7,1136.347900390625 +66.71,1136.0560302734375 +66.72,1135.7691650390625 +66.73,1135.4873046875 +66.74,1135.198486328125 +66.75,1134.9107666015625 +66.76,1134.628173828125 +66.77,1134.338623046875 +66.78,1134.05419921875 +66.79,1133.7747802734375 +66.8,1133.5003662109375 +66.81,1133.23095703125 +66.82,1132.966552734375 +66.83,1132.718994140625 +66.84,1132.47021484375 +66.85,1132.238037109375 +66.86,1132.026611328125 +66.87,1131.8294677734375 +66.88,1131.6705322265625 +66.89,1131.5255126953125 +66.9,1131.4442138671875 +66.91,1131.39990234375 +66.92,1131.3802490234375 +66.93,1131.388916015625 +66.94,1131.4156494140625 +66.95,1131.4442138671875 +66.96,1131.4765625 +66.97,1131.510498046875 +66.98,1131.55810546875 +66.99,1131.6173095703125 +67,1131.677734375 +67.01,1131.739501953125 +67.02,1131.79248046875 +67.03,1131.846923828125 +67.04,1131.892578125 +67.05,1131.9395751953125 +67.06,1131.9879150390625 +67.07,1132.0374755859375 +67.08,1132.08837890625 +67.09,1132.1544189453125 +67.1,1132.221435546875 +67.11,1132.2894287109375 +67.12,1132.3583984375 +67.13,1132.42822265625 +67.14,1132.4649658203125 +67.15,1132.496826171875 +67.16,1132.501953125 +67.17,1132.506591796875 +67.18,1132.4927978515625 +67.19,1132.474609375 +67.2,1132.43994140625 +67.21,1132.361083984375 +67.22,1132.2685546875 +67.23,1132.16650390625 +67.24,1132.0528564453125 +67.25,1131.921875 +67.26,1131.7857666015625 +67.27,1131.558349609375 +67.28,1131.30078125 +67.29,1131.0052490234375 +67.3,1130.71044921875 +67.31,1130.3641357421875 +67.32,1129.996826171875 +67.33,1129.6309814453125 +67.34,1129.2545166015625 +67.35,1128.87548828125 +67.36,1128.501953125 +67.37,1128.1319580078125 +67.38,1127.75341796875 +67.39,1127.37646484375 +67.4,1127.0010986328125 +67.41,1126.63134765625 +67.42,1126.2630615234375 +67.43,1125.896484375 +67.44,1125.5355224609375 +67.45,1125.1800537109375 +67.46,1124.830078125 +67.47,1124.5513916015625 +67.48,1124.2874755859375 +67.49,1124.0701904296875 +67.5,1123.876953125 +67.51,1123.6956787109375 +67.52,1123.5201416015625 +67.53,1123.356201171875 +67.54,1123.19775390625 +67.55,1123.0948486328125 +67.56,1123.1629638671875 +67.57,1123.264404296875 +67.58,1123.39453125 +67.59,1123.525146484375 +67.6,1123.6561279296875 +67.61,1123.7874755859375 +67.62,1123.89111328125 +67.63,1123.92138671875 +67.64,1123.9290771484375 +67.65,1123.9322509765625 +67.66,1123.8448486328125 +67.67,1123.7579345703125 +67.68,1123.6676025390625 +67.69,1123.5577392578125 +67.7,1123.446533203125 +67.71,1123.3380126953125 +67.72,1123.2242431640625 +67.73,1123.09326171875 +67.74,1122.953125 +67.75,1122.780029296875 +67.76,1122.6102294921875 +67.77,1122.44384765625 +67.78,1122.254638671875 +67.79,1122.06103515625 +67.8,1121.85693359375 +67.81,1121.6505126953125 +67.82,1121.44775390625 +67.83,1121.2467041015625 +67.84,1121.04931640625 +67.85,1120.84765625 +67.86,1120.649658203125 +67.87,1120.4552001953125 +67.88,1120.264404296875 +67.89,1120.0771484375 +67.9,1119.8974609375 +67.91,1119.72119140625 +67.92,1119.5504150390625 +67.93,1119.3829345703125 +67.94,1119.2188720703125 +67.95,1119.05810546875 +67.96,1118.900634765625 +67.97,1118.7403564453125 +67.98,1118.5654296875 +67.99,1118.3759765625 +68,1118.1900634765625 +68.01,1117.99365234375 +68.02,1117.794921875 +68.03,1117.5938720703125 +68.04,1117.3746337890625 +68.05,1117.145263671875 +68.06,1116.911865234375 +68.07,1116.6905517578125 +68.08,1116.4652099609375 +68.09,1116.243896484375 +68.1,1116.0264892578125 +68.11,1115.81298828125 +68.12,1115.601318359375 +68.13,1115.3914794921875 +68.14,1115.1177978515625 +68.15,1114.8465576171875 +68.16,1114.5599365234375 +68.17,1114.2779541015625 +68.18,1113.99658203125 +68.19,1113.7138671875 +68.2,1113.4359130859375 +68.21,1113.1685791015625 +68.22,1112.8917236328125 +68.23,1112.6195068359375 +68.24,1112.3519287109375 +68.25,1112.078857421875 +68.26,1111.8065185546875 +68.27,1111.5347900390625 +68.28,1111.223876953125 +68.29,1110.9119873046875 +68.3,1110.5992431640625 +68.31,1110.2916259765625 +68.32,1109.9830322265625 +68.33,1109.673583984375 +68.34,1109.3592529296875 +68.35,1109.050048828125 +68.36,1108.7440185546875 +68.37,1108.443115234375 +68.38,1108.143310546875 +68.39,1107.82666015625 +68.4,1107.5152587890625 +68.41,1107.1990966796875 +68.42,1106.8883056640625 +68.43,1106.582763671875 +68.44,1106.2823486328125 +68.45,1105.9930419921875 +68.46,1105.7088623046875 +68.47,1105.4237060546875 +68.48,1105.1495361328125 +68.49,1104.874267578125 +68.5,1104.60986328125 +68.51,1104.350341796875 +68.52,1104.0716552734375 +68.53,1103.7840576171875 +68.54,1103.4755859375 +68.55,1103.1424560546875 +68.56,1102.8070068359375 +68.57,1102.47509765625 +68.58,1102.144775390625 +68.59,1101.818115234375 +68.6,1101.4930419921875 +68.61,1101.129638671875 +68.62,1100.770263671875 +68.63,1100.388916015625 +68.64,1100.01171875 +68.65,1099.6326904296875 +68.66,1099.25390625 +68.67,1098.8873291015625 +68.68,1098.52685546875 +68.69,1098.16650390625 +68.7,1097.8240966796875 +68.71,1097.487548828125 +68.72,1097.15283203125 +68.73,1096.8240966796875 +68.74,1096.505126953125 +68.75,1096.191650390625 +68.76,1095.8800048828125 +68.77,1095.573974609375 +68.78,1095.281494140625 +68.79,1094.9864501953125 +68.8,1094.6968994140625 +68.81,1094.4267578125 +68.82,1094.161865234375 +68.83,1093.902099609375 +68.84,1093.6495361328125 +68.85,1093.404052734375 +68.86,1093.1654052734375 +68.87,1092.9437255859375 +68.88,1092.728759765625 +68.89,1092.5164794921875 +68.9,1092.3109130859375 +68.91,1092.10986328125 +68.92,1091.9033203125 +68.93,1091.701416015625 +68.94,1091.5040283203125 +68.95,1091.299072265625 +68.96,1091.0966796875 +68.97,1090.896728515625 +68.98,1090.7032470703125 +68.99,1090.51220703125 +69,1090.3255615234375 +69.01,1090.145263671875 +69.02,1089.96923828125 +69.03,1089.79345703125 +69.04,1089.621826171875 +69.05,1089.424560546875 +69.06,1089.2276611328125 +69.07,1089.025146484375 +69.08,1088.8271484375 +69.09,1088.631591796875 +69.1,1088.4364013671875 +69.11,1088.2276611328125 +69.12,1088.01953125 +69.13,1087.8157958984375 +69.14,1087.6065673828125 +69.15,1087.389892578125 +69.16,1087.173828125 +69.17,1086.9503173828125 +69.18,1086.7294921875 +69.19,1086.5133056640625 +69.2,1086.3016357421875 +69.21,1086.0865478515625 +69.22,1085.8740234375 +69.23,1085.666015625 +69.24,1085.4625244140625 +69.25,1085.265380859375 +69.26,1085.0806884765625 +69.27,1084.912109375 +69.28,1084.7515869140625 +69.29,1084.594970703125 +69.3,1084.498046875 +69.31,1084.42041015625 +69.32,1084.345947265625 +69.33,1084.2744140625 +69.34,1084.2059326171875 +69.35,1084.12646484375 +69.36,1084.048095703125 +69.37,1083.962646484375 +69.38,1083.872314453125 +69.39,1083.7791748046875 +69.4,1083.6531982421875 +69.41,1083.5286865234375 +69.42,1083.3778076171875 +69.43,1083.2266845703125 +69.44,1083.041259765625 +69.45,1082.8419189453125 +69.46,1082.5791015625 +69.47,1082.30126953125 +69.48,1082.0284423828125 +69.49,1081.7564697265625 +69.5,1081.489501953125 +69.51,1081.2314453125 +69.52,1080.9742431640625 +69.53,1080.7198486328125 +69.54,1080.4642333984375 +69.55,1080.20947265625 +69.56,1079.9595947265625 +69.57,1079.6468505859375 +69.58,1079.3175048828125 +69.59,1078.98974609375 +69.6,1078.6497802734375 +69.61,1078.2857666015625 +69.62,1077.9276123046875 +69.63,1077.577392578125 +69.64,1077.233154296875 +69.65,1076.8946533203125 +69.66,1076.56201171875 +69.67,1076.2508544921875 +69.68,1075.9453125 +69.69,1075.6612548828125 +69.7,1075.3824462890625 +69.71,1075.10888671875 +69.72,1074.852294921875 +69.73,1074.606689453125 +69.74,1074.3798828125 +69.75,1074.15771484375 +69.76,1073.9442138671875 +69.77,1073.7392578125 +69.78,1073.5546875 +69.79,1073.374267578125 +69.8,1073.2041015625 +69.81,1073.0380859375 +69.82,1072.8760986328125 +69.83,1072.7298583984375 +69.84,1072.621337890625 +69.85,1072.5262451171875 +69.86,1072.432373046875 +69.87,1072.333740234375 +69.88,1072.2464599609375 +69.89,1072.164306640625 +69.9,1072.083251953125 +69.91,1072.005126953125 +69.92,1071.93408203125 +69.93,1071.8619384765625 +69.94,1071.792724609375 +69.95,1071.7303466796875 +69.96,1071.6707763671875 +69.97,1071.61376953125 +69.98,1071.5595703125 +69.99,1071.508056640625 +70,1071.4591064453125 +70.01,1071.40283203125 +70.02,1071.34912109375 +70.03,1071.2581787109375 +70.04,1071.1463623046875 +70.05,1071.0296630859375 +70.06,1070.8983154296875 +70.07,1070.770263671875 +70.08,1070.6416015625 +70.09,1070.5142822265625 +70.1,1070.3922119140625 +70.11,1070.2713623046875 +70.12,1070.1397705078125 +70.13,1070.011474609375 +70.14,1069.8865966796875 +70.15,1069.77880859375 +70.16,1069.674072265625 +70.17,1069.558349609375 +70.18,1069.4456787109375 +70.19,1069.3260498046875 +70.2,1069.2056884765625 +70.21,1069.0885009765625 +70.22,1068.974365234375 +70.23,1068.86328125 +70.24,1068.755126953125 +70.25,1068.63818359375 +70.26,1068.524169921875 +70.27,1068.4251708984375 +70.28,1068.317138671875 +70.29,1068.2120361328125 +70.3,1068.1256103515625 +70.31,1067.9942626953125 +70.32,1067.860107421875 +70.33,1067.7291259765625 +70.34,1067.6011962890625 +70.35,1067.472412109375 +70.36,1067.3367919921875 +70.37,1067.1964111328125 +70.38,1067.0592041015625 +70.39,1066.9251708984375 +70.4,1066.7705078125 +70.41,1066.619140625 +70.42,1066.443359375 +70.43,1066.2711181640625 +70.44,1066.1024169921875 +70.45,1065.9371337890625 +70.46,1065.7396240234375 +70.47,1065.5458984375 +70.48,1065.3480224609375 +70.49,1065.161865234375 +70.5,1064.9793701171875 +70.51,1064.800537109375 +70.52,1064.6253662109375 +70.53,1064.4498291015625 +70.54,1064.2559814453125 +70.55,1064.0579833984375 +70.56,1063.86376953125 +70.57,1063.6514892578125 +70.58,1063.4432373046875 +70.59,1063.2388916015625 +70.6,1063.038330078125 +70.61,1062.8416748046875 +70.62,1062.6488037109375 +70.63,1062.4598388671875 +70.64,1062.2745361328125 +70.65,1062.093017578125 +70.66,1061.8892822265625 +70.67,1061.689453125 +70.68,1061.4735107421875 +70.69,1061.2816162109375 +70.7,1061.093505859375 +70.71,1060.9090576171875 +70.72,1060.7423095703125 +70.73,1060.5849609375 +70.74,1060.43115234375 +70.75,1060.28271484375 +70.76,1060.137451171875 +70.77,1059.9996337890625 +70.78,1059.864990234375 +70.79,1059.7335205078125 +70.8,1059.605224609375 +70.81,1059.47607421875 +70.82,1059.3101806640625 +70.83,1059.1478271484375 +70.84,1058.98095703125 +70.85,1058.817626953125 +70.86,1058.6578369140625 +70.87,1058.50146484375 +70.88,1058.346435546875 +70.89,1058.19482421875 +70.9,1058.03662109375 +70.91,1057.842041015625 +70.92,1057.6512451171875 +70.93,1057.460205078125 +70.94,1057.2728271484375 +70.95,1057.0673828125 +70.96,1056.8240966796875 +70.97,1056.6029052734375 +70.98,1056.367919921875 +70.99,1056.1490478515625 +71,1055.934326171875 +71.01,1055.709716796875 +71.02,1055.4891357421875 +71.03,1055.2646484375 +71.04,1055.0523681640625 +71.05,1054.8560791015625 +71.06,1054.66357421875 +71.07,1054.474853515625 +71.08,1054.2779541015625 +71.09,1054.0849609375 +71.1,1053.8857421875 +71.11,1053.668701171875 +71.12,1053.4556884765625 +71.13,1053.2467041015625 +71.14,1053.0218505859375 +71.15,1052.78125 +71.16,1052.5311279296875 +71.17,1052.285400390625 +71.18,1052.0440673828125 +71.19,1051.80712890625 +71.2,1051.5784912109375 +71.21,1051.3541259765625 +71.22,1051.1339111328125 +71.23,1050.9078369140625 +71.24,1050.696044921875 +71.25,1050.4903564453125 +71.26,1050.2926025390625 +71.27,1050.0927734375 +71.28,1049.8870849609375 +71.29,1049.6715087890625 +71.3,1049.4580078125 +71.31,1049.2447509765625 +71.32,1048.999755859375 +71.33,1048.745361328125 +71.34,1048.479736328125 +71.35,1048.141357421875 +71.36,1047.78662109375 +71.37,1047.4375 +71.38,1047.04638671875 +71.39,1046.6573486328125 +71.4,1046.2603759765625 +71.41,1045.8616943359375 +71.42,1045.4532470703125 +71.43,1045.0213623046875 +71.44,1044.590087890625 +71.45,1044.157470703125 +71.46,1043.709716796875 +71.47,1043.2529296875 +71.48,1042.801025390625 +71.49,1042.35595703125 +71.5,1041.913818359375 +71.51,1041.478515625 +71.52,1041.0262451171875 +71.53,1040.576904296875 +71.54,1040.1346435546875 +71.55,1039.6893310546875 +71.56,1039.2510986328125 +71.57,1038.815673828125 +71.58,1038.3792724609375 +71.59,1037.951904296875 +71.6,1037.5294189453125 +71.61,1037.11376953125 +71.62,1036.704833984375 +71.63,1036.3046875 +71.64,1035.9112548828125 +71.65,1035.5421142578125 +71.66,1035.201171875 +71.67,1034.8922119140625 +71.68,1034.5889892578125 +71.69,1034.29931640625 +71.7,1034.023193359375 +71.71,1033.75244140625 +71.72,1033.5050048828125 +71.73,1033.29443359375 +71.74,1033.0985107421875 +71.75,1032.9151611328125 +71.76,1032.7421875 +71.77,1032.5736083984375 +71.78,1032.4271240234375 +71.79,1032.30859375 +71.8,1032.1998291015625 +71.81,1032.1064453125 +71.82,1032.0167236328125 +71.83,1031.9403076171875 +71.84,1031.8690185546875 +71.85,1031.799072265625 +71.86,1031.7222900390625 +71.87,1031.640869140625 +71.88,1031.5626220703125 +71.89,1031.5015869140625 +71.9,1031.4434814453125 +71.91,1031.394287109375 +71.92,1031.342041015625 +71.93,1031.292724609375 +71.94,1031.260009765625 +71.95,1031.2457275390625 +71.96,1031.2359619140625 +71.97,1031.2265625 +71.98,1031.219482421875 +71.99,1031.214599609375 +72,1031.2119140625 +72.01,1031.2135009765625 +72.02,1031.2152099609375 +72.03,1031.218994140625 +72.04,1031.2247314453125 +72.05,1031.228515625 +72.06,1031.218505859375 +72.07,1031.210693359375 +72.08,1031.198974609375 +72.09,1031.183349609375 +72.1,1031.152099609375 +72.11,1031.105224609375 +72.12,1031.0408935546875 +72.13,1030.979248046875 +72.14,1030.87255859375 +72.15,1030.7628173828125 +72.16,1030.644287109375 +72.17,1030.52880859375 +72.18,1030.4124755859375 +72.19,1030.2833251953125 +72.2,1030.1732177734375 +72.21,1030.0601806640625 +72.22,1029.9501953125 +72.23,1029.8431396484375 +72.24,1029.739013671875 +72.25,1029.6376953125 +72.26,1029.5135498046875 +72.27,1029.3509521484375 +72.28,1029.146240234375 +72.29,1028.943359375 +72.3,1028.7265625 +72.31,1028.49609375 +72.32,1028.2440185546875 +72.33,1027.9825439453125 +72.34,1027.7236328125 +72.35,1027.453369140625 +72.36,1027.144287109375 +72.37,1026.8382568359375 +72.38,1026.53515625 +72.39,1026.237060546875 +72.4,1025.9381103515625 +72.41,1025.6361083984375 +72.42,1025.3214111328125 +72.43,1024.982177734375 +72.44,1024.630615234375 +72.45,1024.2806396484375 +72.46,1023.9204711914062 +72.47,1023.538330078125 +72.48,1023.158203125 +72.49,1022.780029296875 +72.5,1022.3900756835938 +72.51,1021.9903564453125 +72.52,1021.561279296875 +72.53,1021.1090698242188 +72.54,1020.6636962890625 +72.55,1020.2211303710938 +72.56,1019.7813110351562 +72.57,1019.3305053710938 +72.58,1018.8568725585938 +72.59,1018.386474609375 +72.6,1017.9232177734375 +72.61,1017.4512939453125 +72.62,1016.96484375 +72.63,1016.4818115234375 +72.64,1016.0061645507812 +72.65,1015.5377807617188 +72.66,1015.0806274414062 +72.67,1014.6307373046875 +72.68,1014.2017822265625 +72.69,1013.7935180664062 +72.7,1013.39599609375 +72.71,1013.0347900390625 +72.72,1012.689697265625 +72.73,1012.3546752929688 +72.74,1012.04345703125 +72.75,1011.7479858398438 +72.76,1011.466064453125 +72.77,1011.2053833007812 +72.78,1010.9678344726562 +72.79,1010.7352905273438 +72.8,1010.55126953125 +72.81,1010.3737182617188 +72.82,1010.21044921875 +72.83,1010.0632934570312 +72.84,1009.9241943359375 +72.85,1009.806884765625 +72.86,1009.7012329101562 +72.87,1009.5992431640625 +72.88,1009.5007934570312 +72.89,1009.4058227539062 +72.9,1009.330078125 +72.91,1009.2418823242188 +72.92,1009.156982421875 +72.93,1009.075439453125 +72.94,1008.9931030273438 +72.95,1008.9002075195312 +72.96,1008.8106079101562 +72.97,1008.7105102539062 +72.98,1008.6078491210938 +72.99,1008.4927368164062 +73,1008.381103515625 +73.01,1008.27099609375 +73.02,1008.1485595703125 +73.03,1008.019775390625 +73.04,1007.8866577148438 +73.05,1007.7572631835938 +73.06,1007.609619140625 +73.07,1007.4617919921875 +73.08,1007.3137817382812 +73.09,1007.1675415039062 +73.1,1007.0151977539062 +73.11,1006.8389892578125 +73.12,1006.6668090820312 +73.13,1006.49462890625 +73.14,1006.3126220703125 +73.15,1006.1248168945312 +73.16,1005.9134521484375 +73.17,1005.7025146484375 +73.18,1005.4762573242188 +73.19,1005.2545166015625 +73.2,1005.0155029296875 +73.21,1004.7791748046875 +73.22,1004.5237426757812 +73.23,1004.2612915039062 +73.24,1004.0018310546875 +73.25,1003.7472534179688 +73.26,1003.4896240234375 +73.27,1003.2269897460938 +73.28,1002.96337890625 +73.29,1002.6829833984375 +73.3,1002.3978271484375 +73.31,1002.1178588867188 +73.32,1001.8390502929688 +73.33,1001.5535278320312 +73.34,1001.265380859375 +73.35,1000.9745483398438 +73.36,1000.68310546875 +73.37,1000.3948974609375 +73.38,1000.0863037109375 +73.39,999.7811889648438 +73.4,999.4796142578125 +73.41,999.1814575195312 +73.42,998.888671875 +73.43,998.603271484375 +73.44,998.3211059570312 +73.45,998.044189453125 +73.46,997.7705078125 +73.47,997.5001220703125 +73.48,997.2249145507812 +73.49,996.9549560546875 +73.5,996.6901245117188 +73.51,996.4244995117188 +73.52,996.1639404296875 +73.53,995.9143676757812 +73.54,995.6697998046875 +73.55,995.43408203125 +73.56,995.1932373046875 +73.57,994.9671630859375 +73.58,994.7457885742188 +73.59,994.5369873046875 +73.6,994.332763671875 +73.61,994.1369018554688 +73.62,993.9474487304688 +73.63,993.7622680664062 +73.64,993.5972290039062 +73.65,993.446044921875 +73.66,993.30078125 +73.67,993.167236328125 +73.68,993.0374145507812 +73.69,992.921142578125 +73.7,992.8162841796875 +73.71,992.7147827148438 +73.72,992.6185302734375 +73.73,992.5078125 +73.74,992.4182739257812 +73.75,992.3319091796875 +73.76,992.2485961914062 +73.77,992.1585083007812 +73.78,992.0636596679688 +73.79,991.966064453125 +73.8,991.8578491210938 +73.81,991.7449951171875 +73.82,991.6295776367188 +73.83,991.503662109375 +73.84,991.3634033203125 +73.85,991.2109375 +73.86,991.0385131835938 +73.87,990.8009033203125 +73.88,990.5579833984375 +73.89,990.2625732421875 +73.9,989.9663696289062 +73.91,989.645751953125 +73.92,989.3267211914062 +73.93,988.9913940429688 +73.94,988.65185546875 +73.95,988.3160400390625 +73.96,987.9444580078125 +73.97,987.565185546875 +73.98,987.17041015625 +73.99,986.7779541015625 +74,986.391845703125 +74.01,986.011962890625 +74.02,985.6422729492188 +74.03,985.2924194335938 +74.04,984.9564208984375 +74.05,984.628173828125 +74.06,984.3194580078125 +74.07,984.0557250976562 +74.08,983.8108520507812 +74.09,983.5728759765625 +74.1,983.3397216796875 +74.11,983.111328125 +74.12,982.8895874023438 +74.13,982.682373046875 +74.14,982.4796752929688 +74.15,982.2814331054688 +74.16,982.0758056640625 +74.17,981.8549194335938 +74.18,981.6327514648438 +74.19,981.4013671875 +74.2,981.1629028320312 +74.21,980.9075927734375 +74.22,980.6415405273438 +74.23,980.319580078125 +74.24,979.9993286132812 +74.25,979.6276245117188 +74.26,979.2424926757812 +74.27,978.8637084960938 +74.28,978.4912719726562 +74.29,978.1251220703125 +74.3,977.76513671875 +74.31,977.411376953125 +74.32,977.0755004882812 +74.33,976.7515258789062 +74.34,976.4609375 +74.35,976.199462890625 +74.36,975.96484375 +74.37,975.7410278320312 +74.38,975.5338134765625 +74.39,975.3549194335938 +74.4,975.1823120117188 +74.41,975.0159301757812 +74.42,974.855712890625 +74.43,974.7232666015625 +74.44,974.6143798828125 +74.45,974.5267944335938 +74.46,974.4682006835938 +74.47,974.4243774414062 +74.48,974.3893432617188 +74.49,974.3589477539062 +74.5,974.3333129882812 +74.51,974.3102416992188 +74.52,974.2916259765625 +74.53,974.2755126953125 +74.54,974.2618408203125 +74.55,974.2505493164062 +74.56,974.231689453125 +74.57,974.2034301757812 +74.58,974.1500854492188 +74.59,974.0975341796875 +74.6,974.045654296875 +74.61,973.9313354492188 +74.62,973.8085327148438 +74.63,973.6871337890625 +74.64,973.4962158203125 +74.65,973.2640380859375 +74.66,973.0265502929688 +74.67,972.7030639648438 +74.68,972.3829956054688 +74.69,972.0133056640625 +74.7,971.6495361328125 +74.71,971.2916259765625 +74.72,970.9395751953125 +74.73,970.5933837890625 +74.74,970.286376953125 +74.75,969.9926147460938 +74.76,969.741455078125 +74.77,969.5128173828125 +74.78,969.3734130859375 +74.79,969.2376098632812 +74.8,969.1212158203125 +74.81,969.0594482421875 +74.82,969.0221557617188 +74.83,969.0110473632812 +74.84,969.0061645507812 +74.85,969.0349731445312 +74.86,969.0714721679688 +74.87,969.1096801757812 +74.88,969.1495361328125 +74.89,969.1753540039062 +74.9,969.2028198242188 +74.91,969.2319946289062 +74.92,969.2490234375 +74.93,969.2638549804688 +74.94,969.2804565429688 +74.95,969.2948608398438 +74.96,969.3070678710938 +74.97,969.3170166015625 +74.98,969.31689453125 +74.99,969.3126220703125 +75,969.3102416992188 +75.01,969.3076782226562 +75.02,969.3069458007812 +75.03,969.3079223632812 +75.04,969.3106079101562 +75.05,969.3109741210938 +75.06,969.30908203125 +75.07,969.3088989257812 +75.08,969.3143310546875 +75.09,969.3212890625 +75.1,969.329833984375 +75.11,969.3181762695312 +75.12,969.3004150390625 +75.13,969.2823486328125 +75.14,969.2561645507812 +75.15,969.2318725585938 +75.16,969.203369140625 +75.17,969.1766967773438 +75.18,969.1478271484375 +75.19,969.09521484375 +75.2,969.062255859375 +75.21,969.0390014648438 +75.22,969.0095825195312 +75.23,968.98193359375 +75.24,968.938232421875 +75.25,968.8964233398438 +75.26,968.836669921875 +75.27,968.75146484375 +75.28,968.6506958007812 +75.29,968.5208740234375 +75.3,968.3623046875 +75.31,968.1870727539062 +75.32,967.9520874023438 +75.33,967.6953735351562 +75.34,967.4131469726562 +75.35,967.1333618164062 +75.36,966.8126220703125 +75.37,966.4769897460938 +75.38,966.1226806640625 +75.39,965.7637329101562 +75.4,965.4041137695312 +75.41,965.0398559570312 +75.42,964.680908203125 +75.43,964.3095703125 +75.44,963.929931640625 +75.45,963.5322265625 +75.46,963.1383666992188 +75.47,962.750244140625 +75.48,962.3422241210938 +75.49,961.9401245117188 +75.5,961.5439453125 +75.51,961.1536254882812 +75.52,960.7691040039062 +75.53,960.384521484375 +75.54,959.995849609375 +75.55,959.613037109375 +75.56,959.2243041992188 +75.57,958.8414916992188 +75.58,958.4429321289062 +75.59,958.0386352539062 +75.6,957.6384887695312 +75.61,957.2444458007812 +75.62,956.8486938476562 +75.63,956.4511108398438 +75.64,956.0420532226562 +75.65,955.6392822265625 +75.66,955.2427978515625 +75.67,954.8701782226562 +75.68,954.5133056640625 +75.69,954.1799926757812 +75.7,953.860107421875 +75.71,953.5496215820312 +75.72,953.293701171875 +75.73,953.0485229492188 +75.74,952.8355102539062 +75.75,952.6622924804688 +75.76,952.4950561523438 +75.77,952.3336791992188 +75.78,952.1761474609375 +75.79,952.0244140625 +75.8,951.8764038085938 +75.81,951.7301025390625 +75.82,951.5894165039062 +75.83,951.4542846679688 +75.84,951.3424072265625 +75.85,951.2338256835938 +75.86,951.1284790039062 +75.87,951.0263671875 +75.88,950.9155883789062 +75.89,950.8198852539062 +75.9,950.7272338867188 +75.91,950.6257934570312 +75.92,950.5235595703125 +75.93,950.41455078125 +75.94,950.3087768554688 +75.95,950.2001953125 +75.96,950.0613403320312 +75.97,949.9200439453125 +75.98,949.7802124023438 +75.99,949.6222534179688 +76,949.4521484375 +76.01,949.25830078125 +76.02,949.0606079101562 +76.03,948.861083984375 +76.04,948.604736328125 +76.05,948.3451538085938 +76.06,948.0686645507812 +76.07,947.7714233398438 +76.08,947.4734497070312 +76.09,947.1609497070312 +76.1,946.8026733398438 +76.11,946.4462280273438 +76.12,946.070068359375 +76.13,945.6683959960938 +76.14,945.2533569335938 +76.15,944.8349609375 +76.16,944.4210815429688 +76.17,944.0136108398438 +76.18,943.6007690429688 +76.19,943.1884765625 +76.2,942.78076171875 +76.21,942.3755493164062 +76.22,941.976806640625 +76.23,941.5845336914062 +76.24,941.1985473632812 +76.25,940.8189086914062 +76.26,940.453369140625 +76.27,940.105712890625 +76.28,939.8032836914062 +76.29,939.5142211914062 +76.3,939.2344360351562 +76.31,938.9638061523438 +76.32,938.6983642578125 +76.33,938.4380493164062 +76.34,938.182861328125 +76.35,937.9366455078125 +76.36,937.6973266601562 +76.37,937.46484375 +76.38,937.2371826171875 +76.39,937.0280151367188 +76.4,936.8234252929688 +76.41,936.6233520507812 +76.42,936.431640625 +76.43,936.2560424804688 +76.44,936.0846557617188 +76.45,935.9154663085938 +76.46,935.7503662109375 +76.47,935.59130859375 +76.48,935.438232421875 +76.49,935.2911376953125 +76.5,935.16357421875 +76.51,935.0455322265625 +76.52,934.9310302734375 +76.53,934.823974609375 +76.54,934.7281494140625 +76.55,934.6689453125 +76.56,934.6244506835938 +76.57,934.6455078125 +76.58,934.6822509765625 +76.59,934.7994384765625 +76.6,934.9215087890625 +76.61,935.0503540039062 +76.62,935.20556640625 +76.63,935.3612670898438 +76.64,935.5743408203125 +76.65,935.8343505859375 +76.66,936.0936279296875 +76.67,936.3521728515625 +76.68,936.60986328125 +76.69,936.86669921875 +76.7,937.0735473632812 +76.71,937.2229614257812 +76.72,937.3155517578125 +76.73,937.4029541015625 +76.74,937.4556884765625 +76.75,937.4996337890625 +76.76,937.5408325195312 +76.77,937.5792236328125 +76.78,937.5952758789062 +76.79,937.5733642578125 +76.8,937.5452880859375 +76.81,937.5131225585938 +76.82,937.4807739257812 +76.83,937.4443359375 +76.84,937.4038696289062 +76.85,937.3554077148438 +76.86,937.293212890625 +76.87,937.20556640625 +76.88,937.1203002929688 +76.89,937.0431518554688 +76.9,936.96826171875 +76.91,936.8896484375 +76.92,936.813232421875 +76.93,936.7389526367188 +76.94,936.6668701171875 +76.95,936.5909423828125 +76.96,936.5172119140625 +76.97,936.445556640625 +76.98,936.3760375976562 +76.99,936.3085327148438 +77,936.2431030273438 +77.01,936.1815795898438 +77.02,936.1201171875 +77.03,936.0508422851562 +77.04,935.9894409179688 +77.05,935.929931640625 +77.06,935.8665161132812 +77.07,935.8049926757812 +77.08,935.745361328125 +77.09,935.6876831054688 +77.1,935.6318359375 +77.11,935.577880859375 +77.12,935.5217895507812 +77.13,935.467529296875 +77.14,935.4150390625 +77.15,935.3643798828125 +77.16,935.3154907226562 +77.17,935.2662963867188 +77.18,935.2109375 +77.19,935.1416625976562 +77.2,935.0645751953125 +77.21,934.9855346679688 +77.22,934.902587890625 +77.23,934.8217163085938 +77.24,934.7428588867188 +77.25,934.6698608398438 +77.26,934.5988159179688 +77.27,934.5296630859375 +77.28,934.4584350585938 +77.29,934.3381958007812 +77.3,934.2163696289062 +77.31,934.096923828125 +77.32,933.9740600585938 +77.33,933.8496704101562 +77.34,933.7003173828125 +77.35,933.5536499023438 +77.36,933.40966796875 +77.37,933.2662963867188 +77.38,933.1256103515625 +77.39,932.983642578125 +77.4,932.8384399414062 +77.41,932.6920166015625 +77.42,932.5169067382812 +77.43,932.3447875976562 +77.44,932.152099609375 +77.45,931.962646484375 +77.46,931.7704467773438 +77.47,931.5520629882812 +77.48,931.333251953125 +77.49,931.1061401367188 +77.5,930.8532104492188 +77.51,930.55517578125 +77.52,930.245849609375 +77.53,929.9409790039062 +77.54,929.6386108398438 +77.55,929.3406982421875 +77.56,929.0413208007812 +77.57,928.7406005859375 +77.58,928.4443359375 +77.59,928.1251220703125 +77.6,927.8106079101562 +77.61,927.4948120117188 +77.62,927.1779174804688 +77.63,926.8716430664062 +77.64,926.5700073242188 +77.65,926.2788696289062 +77.66,926.0000610351562 +77.67,925.766845703125 +77.68,925.53955078125 +77.69,925.316162109375 +77.7,925.0966796875 +77.71,924.8810424804688 +77.72,924.6868286132812 +77.73,924.4961547851562 +77.74,924.3090209960938 +77.75,924.1470336914062 +77.76,923.98828125 +77.77,923.834716796875 +77.78,923.684326171875 +77.79,923.537109375 +77.8,923.3910522460938 +77.81,923.2401733398438 +77.82,923.0924682617188 +77.83,922.9479370117188 +77.84,922.8064575195312 +77.85,922.6680297851562 +77.86,922.5325927734375 +77.87,922.3982543945312 +77.88,922.266845703125 +77.89,922.1383666992188 +77.9,922.0264892578125 +77.91,921.9173583984375 +77.92,921.8187866210938 +77.93,921.7012329101562 +77.94,921.58642578125 +77.95,921.472412109375 +77.96,921.3611450195312 +77.97,921.2446899414062 +77.98,921.1035766601562 +77.99,920.9576416015625 +78,920.7677612304688 +78.01,920.569580078125 +78.02,920.373046875 +78.03,920.1664428710938 +78.04,919.9654541015625 +78.05,919.74658203125 +78.06,919.531494140625 +78.07,919.3202514648438 +78.08,919.11279296875 +78.09,918.9090576171875 +78.1,918.697265625 +78.11,918.4891967773438 +78.12,918.273193359375 +78.13,918.0531616210938 +78.14,917.8076171875 +78.15,917.5447387695312 +78.16,917.2470703125 +78.17,916.8621826171875 +78.18,916.47705078125 +78.19,916.0486450195312 +78.2,915.6009521484375 +78.21,915.1244506835938 +78.22,914.6350708007812 +78.23,914.1212768554688 +78.24,913.6146240234375 +78.25,913.1150512695312 +78.26,912.62255859375 +78.27,912.1370849609375 +78.28,911.6918334960938 +78.29,911.255126953125 +78.3,910.850341796875 +78.31,910.4616088867188 +78.32,910.1101684570312 +78.33,909.7644653320312 +78.34,909.4420166015625 +78.35,909.1270141601562 +78.36,908.8310546875 +78.37,908.546142578125 +78.38,908.2662963867188 +78.39,907.9993286132812 +78.4,907.7450561523438 +78.41,907.5210571289062 +78.42,907.301513671875 +78.43,907.08837890625 +78.44,906.8776245117188 +78.45,906.6712646484375 +78.46,906.4574584960938 +78.47,906.248046875 +78.48,906.0116577148438 +78.49,905.7681274414062 +78.5,905.52734375 +78.51,905.2697143554688 +78.52,905.0169067382812 +78.53,904.7454223632812 +78.54,904.4711303710938 +78.55,904.2018432617188 +78.56,903.9199829101562 +78.57,903.6354370117188 +78.58,903.35595703125 +78.59,903.0797119140625 +78.6,902.8085327148438 +78.61,902.5423583984375 +78.62,902.3046264648438 +78.63,902.0774536132812 +78.64,901.8587646484375 +78.65,901.650390625 +78.66,901.4464111328125 +78.67,901.266357421875 +78.68,901.1471557617188 +78.69,901.0314331054688 +78.7,900.9268798828125 +78.71,900.8256225585938 +78.72,900.7276000976562 +78.73,900.625 +78.74,900.523681640625 +78.75,900.3727416992188 +78.76,900.1942749023438 +78.77,899.9826049804688 +78.78,899.7303466796875 +78.79,899.3909912109375 +78.8,899.0299072265625 +78.81,898.5673828125 +78.82,898.11181640625 +78.83,897.6631469726562 +78.84,897.2213134765625 +78.85,896.7863159179688 +78.86,896.4127807617188 +78.87,896.09228515625 +78.88,895.7852172851562 +78.89,895.6438598632812 +78.9,895.57275390625 +78.91,895.5046997070312 +78.92,895.4435424804688 +78.93,895.3853149414062 +78.94,895.3299560546875 +78.95,895.2911376953125 +78.96,895.2549438476562 +78.97,895.2056884765625 +78.98,895.1532592773438 +78.99,895.1016235351562 +79,895.0115966796875 +79.01,894.9207763671875 +79.02,894.8330078125 +79.03,894.7404174804688 +79.04,894.6509399414062 +79.05,894.5645141601562 +79.06,894.4810180664062 +79.07,894.4063110351562 +79.08,894.3344116210938 +79.09,894.2554931640625 +79.1,894.179443359375 +79.11,894.104248046875 +79.12,894.0318603515625 +79.13,893.962158203125 +79.14,893.8873901367188 +79.15,893.7821044921875 +79.16,893.6681518554688 +79.17,893.5534057617188 +79.18,893.4417724609375 +79.19,893.3331909179688 +79.2,893.2276000976562 +79.21,893.1250610351562 +79.22,892.9962158203125 +79.23,892.8666381835938 +79.24,892.7246704101562 +79.25,892.5860595703125 +79.26,892.4507446289062 +79.27,892.3187255859375 +79.28,892.18408203125 +79.29,892.0389404296875 +79.3,891.889404296875 +79.31,891.7393188476562 +79.32,891.5927124023438 +79.33,891.451416015625 +79.34,891.3056030273438 +79.35,891.1630859375 +79.36,891.01220703125 +79.37,890.86474609375 +79.38,890.7185668945312 +79.39,890.5777587890625 +79.4,890.440185546875 +79.41,890.3038940429688 +79.42,890.1610717773438 +79.43,889.9864501953125 +79.44,889.8154296875 +79.45,889.66943359375 +79.46,889.5052490234375 +79.47,889.3446044921875 +79.48,889.1795043945312 +79.49,888.9945068359375 +79.5,888.7996215820312 +79.51,888.5753173828125 +79.52,888.3336791992188 +79.53,888.0729370117188 +79.54,887.8167114257812 +79.55,887.56494140625 +79.56,887.3156127929688 +79.57,887.0629272460938 +79.58,886.822509765625 +79.59,886.58642578125 +79.6,886.3566284179688 +79.61,886.1310424804688 +79.62,885.93310546875 +79.63,885.748779296875 +79.64,885.5740966796875 +79.65,885.406982421875 +79.66,885.2434692382812 +79.67,885.08349609375 +79.68,884.9270629882812 +79.69,884.7702026367188 +79.7,884.5836791992188 +79.71,884.4009399414062 +79.72,884.2219848632812 +79.73,884.0466918945312 +79.74,883.8750610351562 +79.75,883.71484375 +79.76,883.58154296875 +79.77,883.4593505859375 +79.78,883.3402709960938 +79.79,883.2496337890625 +79.8,883.1617431640625 +79.81,883.0844116210938 +79.82,883.0097045898438 +79.83,882.9297485351562 +79.84,882.8524169921875 +79.85,882.7991333007812 +79.86,882.7364501953125 +79.87,882.6878662109375 +79.88,882.6473999023438 +79.89,882.6032104492188 +79.9,882.549560546875 +79.91,882.4981689453125 +79.92,882.448974609375 +79.93,882.3356323242188 +79.94,882.22509765625 +79.95,882.1173706054688 +79.96,882.000732421875 +79.97,881.886962890625 +79.98,881.7584838867188 +79.99,881.6290893554688 +80,881.5026245117188 +80.01,881.379150390625 +80.02,881.258544921875 +80.03,881.135009765625 +80.04,880.9987182617188 +80.05,880.8654174804688 +80.06,880.7351684570312 +80.07,880.6078491210938 +80.08,880.4834594726562 +80.09,880.352294921875 +80.1,880.22412109375 +80.11,880.098876953125 +80.12,879.9765014648438 +80.13,879.8569946289062 +80.14,879.6622924804688 +80.15,879.4711303710938 +80.16,879.2698974609375 +80.17,879.0372924804688 +80.18,878.8087158203125 +80.19,878.5743408203125 +80.2,878.3440551757812 +80.21,878.1119384765625 +80.22,877.8818969726562 +80.23,877.6558227539062 +80.24,877.4240112304688 +80.25,877.1962280273438 +80.26,876.9725341796875 +80.27,876.7351684570312 +80.28,876.501953125 +80.29,876.2728881835938 +80.3,876.0654296875 +80.31,875.86181640625 +80.32,875.6619873046875 +80.33,875.4659423828125 +80.34,875.2736206054688 +80.35,875.0713500976562 +80.36,874.8728637695312 +80.37,874.65478515625 +80.38,874.438720703125 +80.39,874.1876831054688 +80.4,873.9077758789062 +80.41,873.6248168945312 +80.42,873.3445434570312 +80.43,873.0689697265625 +80.44,872.7980346679688 +80.45,872.5336303710938 +80.46,872.2717895507812 +80.47,872.0144653320312 +80.48,871.7362670898438 +80.49,871.4627075195312 +80.5,871.1939086914062 +80.51,870.923828125 +80.52,870.6544799804688 +80.53,870.3839111328125 +80.54,870.1102905273438 +80.55,869.8413696289062 +80.56,869.5751953125 +80.57,869.3136596679688 +80.58,869.0372314453125 +80.59,868.7655639648438 +80.6,868.4947509765625 +80.61,868.2266845703125 +80.62,867.9633178710938 +80.63,867.7046508789062 +80.64,867.4214477539062 +80.65,867.13720703125 +80.66,866.85595703125 +80.67,866.5816040039062 +80.68,866.31201171875 +80.69,866.0472412109375 +80.7,865.7871704101562 +80.71,865.5299072265625 +80.72,865.2909545898438 +80.73,865.0565185546875 +80.74,864.8264770507812 +80.75,864.6008911132812 +80.76,864.3699340820312 +80.77,864.1414794921875 +80.78,863.9174194335938 +80.79,863.68212890625 +80.8,863.4610595703125 +80.81,863.2443237304688 +80.82,863.0319213867188 +80.83,862.8237915039062 +80.84,862.610107421875 +80.85,862.3987426757812 +80.86,862.2033081054688 +80.87,862.011962890625 +80.88,861.8343505859375 +80.89,861.66064453125 +80.9,861.4907836914062 +80.91,861.32470703125 +80.92,861.181884765625 +80.93,861.0445556640625 +80.94,860.91650390625 +80.95,860.791748046875 +80.96,860.6761474609375 +80.97,860.5521240234375 +80.98,860.431396484375 +80.99,860.3178100585938 +81,860.2073974609375 +81.01,860.1467895507812 +81.02,860.0985717773438 +81.03,860.052734375 +81.04,860.0151977539062 +81.05,859.97412109375 +81.06,859.9412841796875 +81.07,859.91064453125 +81.08,859.8822021484375 +81.09,859.85595703125 +81.1,859.827880859375 +81.11,859.8019409179688 +81.12,859.772216796875 +81.13,859.73876953125 +81.14,859.69189453125 +81.15,859.647216796875 +81.16,859.5872192382812 +81.17,859.5159912109375 +81.18,859.447265625 +81.19,859.3809814453125 +81.2,859.3053588867188 +81.21,859.2263793945312 +81.22,859.1031494140625 +81.23,858.98095703125 +81.24,858.81494140625 +81.25,858.5978393554688 +81.26,858.3846435546875 +81.27,858.1753540039062 +81.28,857.966064453125 +81.29,857.7410888671875 +81.3,857.5104370117188 +81.31,857.2819213867188 +81.32,857.0574951171875 +81.33,856.8370971679688 +81.34,856.5973510742188 +81.35,856.35986328125 +81.36,856.083740234375 +81.37,855.798583984375 +81.38,855.4987182617188 +81.39,855.1978759765625 +81.4,854.8863525390625 +81.41,854.5468139648438 +81.42,854.15234375 +81.43,853.7598876953125 +81.44,853.3616333007812 +81.45,852.9052734375 +81.46,852.4263916015625 +81.47,851.9019165039062 +81.48,851.3654174804688 +81.49,850.8267211914062 +81.5,850.2761840820312 +81.51,849.7256469726562 +81.52,849.1441040039062 +81.53,848.55517578125 +81.54,847.9744873046875 +81.55,847.4020385742188 +81.56,846.8377685546875 +81.57,846.2815551757812 +81.58,845.7334594726562 +81.59,845.201171875 +81.6,844.6864013671875 +81.61,844.2298583984375 +81.62,843.7998657226562 +81.63,843.3768310546875 +81.64,842.9625854492188 +81.65,842.5784301757812 +81.66,842.2105712890625 +81.67,841.8490600585938 +81.68,841.51513671875 +81.69,841.22412109375 +81.7,840.940673828125 +81.71,840.6665649414062 +81.72,840.4212036132812 +81.73,840.2178955078125 +81.74,840.019287109375 +81.75,839.8330078125 +81.76,839.6512451171875 +81.77,839.4661254882812 +81.78,839.293212890625 +81.79,839.1324462890625 +81.8,838.9758911132812 +81.81,838.8234252929688 +81.82,838.682861328125 +81.83,838.567626953125 +81.84,838.4561157226562 +81.85,838.3482055664062 +81.86,838.243896484375 +81.87,838.1236572265625 +81.88,838.0071411132812 +81.89,837.8922729492188 +81.9,837.777099609375 +81.91,837.6597290039062 +81.92,837.5440063476562 +81.93,837.431884765625 +81.94,837.2960815429688 +81.95,837.1561889648438 +81.96,837.0201416015625 +81.97,836.8878173828125 +81.98,836.7319946289062 +81.99,836.580078125 +82,836.453369140625 +82.01,836.3400268554688 +82.02,836.2340698242188 +82.03,836.1275634765625 +82.04,836.0243530273438 +82.05,835.9147338867188 +82.06,835.7871704101562 +82.07,835.6534423828125 +82.08,835.5135498046875 +82.09,835.3695678710938 +82.1,835.2156372070312 +82.11,835.034423828125 +82.12,834.8553466796875 +82.13,834.6764526367188 +82.14,834.4918823242188 +82.15,834.2977294921875 +82.16,834.0689697265625 +82.17,833.8408203125 +82.18,833.6094970703125 +82.19,833.369140625 +82.2,833.1043090820312 +82.21,832.8192138671875 +82.22,832.5042724609375 +82.23,832.1792602539062 +82.24,831.84619140625 +82.25,831.4761352539062 +82.26,831.0442504882812 +82.27,830.611328125 +82.28,830.169677734375 +82.29,829.7154541015625 +82.3,829.260498046875 +82.31,828.8125610351562 +82.32,828.3716430664062 +82.33,827.9376220703125 +82.34,827.510498046875 +82.35,827.0902099609375 +82.36,826.6825561523438 +82.37,826.3223266601562 +82.38,825.9760131835938 +82.39,825.6455078125 +82.4,825.3363647460938 +82.41,825.0756225585938 +82.42,824.8414306640625 +82.43,824.6218872070312 +82.44,824.4303588867188 +82.45,824.2510986328125 +82.46,824.1013793945312 +82.47,823.9577026367188 +82.48,823.8179931640625 +82.49,823.68603515625 +82.5,823.561767578125 +82.51,823.4548950195312 +82.52,823.390380859375 +82.53,823.340576171875 +82.54,823.3014526367188 +82.55,823.26708984375 +82.56,823.2431640625 +82.57,823.2335205078125 +82.58,823.2262573242188 +82.59,823.221435546875 +82.6,823.2189331054688 +82.61,823.2186889648438 +82.62,823.220703125 +82.63,823.2171630859375 +82.64,823.2158203125 +82.65,823.2050170898438 +82.66,823.1906127929688 +82.67,823.1707153320312 +82.68,823.1375732421875 +82.69,823.064208984375 +82.7,822.9839477539062 +82.71,822.8871459960938 +82.72,822.7584228515625 +82.73,822.5923461914062 +82.74,822.4280395507812 +82.75,822.2364501953125 +82.76,822.0410766601562 +82.77,821.836181640625 +82.78,821.6334228515625 +82.79,821.434814453125 +82.8,821.2363891601562 +82.81,821.0419921875 +82.82,820.8419799804688 +82.83,820.6460571289062 +82.84,820.4463500976562 +82.85,820.258544921875 +82.86,820.0902099609375 +82.87,819.9411010742188 +82.88,819.8013916015625 +82.89,819.6903686523438 +82.9,819.5882568359375 +82.91,819.4891967773438 +82.92,819.40087890625 +82.93,819.3232421875 +82.94,819.2638549804688 +82.95,819.2186279296875 +82.96,819.185546875 +82.97,819.1546630859375 +82.98,819.1259765625 +82.99,819.0994873046875 +83,819.0751953125 +83.01,819.0413208007812 +83.02,818.99609375 +83.03,818.9453125 +83.04,818.89501953125 +83.05,818.82373046875 +83.06,818.7200927734375 +83.07,818.6094970703125 +83.08,818.4960327148438 +83.09,818.383544921875 +83.1,818.2584228515625 +83.11,818.1343994140625 +83.12,817.9998779296875 +83.13,817.8626098632812 +83.14,817.7110595703125 +83.15,817.5453491210938 +83.16,817.3792114257812 +83.17,817.2088012695312 +83.18,817.0418701171875 +83.19,816.8705444335938 +83.2,816.7027587890625 +83.21,816.5307006835938 +83.22,816.2981567382812 +83.23,816.0658569335938 +83.24,815.8299560546875 +83.25,815.574951171875 +83.26,815.3185424804688 +83.27,815.0084228515625 +83.28,814.693603515625 +83.29,814.3257446289062 +83.3,813.9634399414062 +83.31,813.6047973632812 +83.32,813.247802734375 +83.33,812.8634643554688 +83.34,812.4849243164062 +83.35,812.1122436523438 +83.36,811.7297973632812 +83.37,811.353271484375 +83.38,810.998046875 +83.39,810.6484985351562 +83.4,810.3103637695312 +83.41,809.9835205078125 +83.42,809.6737060546875 +83.43,809.3690795898438 +83.44,809.0579833984375 +83.45,808.7657470703125 +83.46,808.4785766601562 +83.47,808.180908203125 +83.48,807.8846435546875 +83.49,807.5838012695312 +83.5,807.2881469726562 +83.51,806.9976806640625 +83.52,806.725830078125 +83.53,806.4764404296875 +83.54,806.2317504882812 +83.55,806.0110473632812 +83.56,805.8006591796875 +83.57,805.596435546875 +83.58,805.4681396484375 +83.59,805.3685302734375 +83.6,805.2720336914062 +83.61,805.1786499023438 +83.62,805.0961303710938 +83.63,805.0281372070312 +83.64,804.9725952148438 +83.65,804.9119262695312 +83.66,804.8539428710938 +83.67,804.798583984375 +83.68,804.7361450195312 +83.69,804.6763916015625 +83.7,804.6212158203125 +83.71,804.568603515625 +83.72,804.5184936523438 +83.73,804.4688720703125 +83.74,804.4216918945312 +83.75,804.376953125 +83.76,804.3345336914062 +83.77,804.2905883789062 +83.78,804.2489624023438 +83.79,804.2096557617188 +83.8,804.1512451171875 +83.81,804.0952758789062 +83.82,804.033935546875 +83.83,803.9577026367188 +83.84,803.884033203125 +83.85,803.7780151367188 +83.86,803.6728515625 +83.87,803.570556640625 +83.88,803.45947265625 +83.89,803.3280639648438 +83.9,803.1997680664062 +83.91,803.0745849609375 +83.92,802.9175415039062 +83.93,802.72900390625 +83.94,802.5421752929688 +83.95,802.3416748046875 +83.96,802.1314086914062 +83.97,801.930908203125 +83.98,801.7244873046875 +83.99,801.5103759765625 +84,801.2750244140625 +84.01,801.0399780273438 +84.02,800.8092041015625 +84.03,800.5767211914062 +84.04,800.27294921875 +84.05,799.9683227539062 +84.06,799.662841796875 +84.07,799.3681640625 +84.08,799.0531616210938 +84.09,798.7432250976562 +84.1,798.4383544921875 +84.11,798.097900390625 +84.12,797.7628784179688 +84.13,797.4332275390625 +84.14,797.1339721679688 +84.15,796.8513793945312 +84.16,796.5736083984375 +84.17,796.3045043945312 +84.18,796.074951171875 +84.19,795.8497314453125 +84.2,795.6365356445312 +84.21,795.429443359375 +84.22,795.2263793945312 +84.23,795.0274658203125 +84.24,794.8228759765625 +84.25,794.6088256835938 +84.26,794.3970336914062 +84.27,794.1778564453125 +84.28,793.9705810546875 +84.29,793.7674560546875 +84.3,793.5548706054688 +84.31,793.3309936523438 +84.32,793.1113891601562 +84.33,792.8960571289062 +84.34,792.6848754882812 +84.35,792.4779052734375 +84.36,792.2538452148438 +84.37,792.0340576171875 +84.38,791.8185424804688 +84.39,791.5995483398438 +84.4,791.3848266601562 +84.41,791.17431640625 +84.42,790.962158203125 +84.43,790.7542114257812 +84.44,790.5504150390625 +84.45,790.3816528320312 +84.46,790.1857299804688 +84.47,789.9822387695312 +84.48,789.771240234375 +84.49,789.5682983398438 +84.5,789.3694458007812 +84.51,789.1746826171875 +84.52,788.9896850585938 +84.53,788.80859375 +84.54,788.6314086914062 +84.55,788.4580688476562 +84.56,788.3001098632812 +84.57,788.151611328125 +84.58,788.0143432617188 +84.59,787.8862915039062 +84.6,787.7615356445312 +84.61,787.6400756835938 +84.62,787.5217895507812 +84.63,787.40673828125 +84.64,787.2947998046875 +84.65,787.1859741210938 +84.66,787.0763549804688 +84.67,786.9407958984375 +84.68,786.80859375 +84.69,786.6796875 +84.7,786.5791625976562 +84.71,786.4815063476562 +84.72,786.3867797851562 +84.73,786.2987670898438 +84.74,786.2135009765625 +84.75,786.127197265625 +84.76,786.0435791015625 +84.77,785.9530029296875 +84.78,785.859375 +84.79,785.749267578125 +84.8,785.616943359375 +84.81,785.48779296875 +84.82,785.3521118164062 +84.83,785.2196655273438 +84.84,785.0807495117188 +84.85,784.9430541992188 +84.86,784.8047485351562 +84.87,784.6561279296875 +84.88,784.4992065429688 +84.89,784.3399047851562 +84.9,784.1820678710938 +84.91,784.0159912109375 +84.92,783.8534545898438 +84.93,783.6943359375 +84.94,783.5386352539062 +84.95,783.3998413085938 +84.96,783.2738647460938 +84.97,783.1702880859375 +84.98,783.069580078125 +84.99,782.9716796875 +85,782.8765258789062 +85.01,782.7686157226562 +85.02,782.65966796875 +85.03,782.4879150390625 +85.04,782.2442626953125 +85.05,782.0029907226562 +85.06,781.7620239257812 +85.07,781.515625 +85.08,781.263916015625 +85.09,780.9991455078125 +85.1,780.7214965820312 +85.11,780.4369506835938 +85.12,780.1571044921875 +85.13,779.8741455078125 +85.14,779.6036376953125 +85.15,779.3338623046875 +85.16,779.0648803710938 +85.17,778.8004760742188 +85.18,778.5406494140625 +85.19,778.2756958007812 +85.2,778.0037231445312 +85.21,777.7326049804688 +85.22,777.4661254882812 +85.23,777.2024536132812 +85.24,776.9317626953125 +85.25,776.665771484375 +85.26,776.4044799804688 +85.27,776.13232421875 +85.28,775.79931640625 +85.29,775.4716796875 +85.3,775.1494140625 +85.31,774.82275390625 +85.32,774.5014038085938 +85.33,774.1854248046875 +85.34,773.868896484375 +85.35,773.5576782226562 +85.36,773.2382202148438 +85.37,772.924072265625 +85.38,772.6074829101562 +85.39,772.2924194335938 +85.4,771.9788208007812 +85.41,771.6705322265625 +85.42,771.3675537109375 +85.43,771.0678100585938 +85.44,770.7733154296875 +85.45,770.4840087890625 +85.46,770.2017822265625 +85.47,769.9246215820312 +85.48,769.6331787109375 +85.49,769.346923828125 +85.5,769.0657958984375 +85.51,768.7897338867188 +85.52,768.5187377929688 +85.53,768.2507934570312 +85.54,767.9820556640625 +85.55,767.71826171875 +85.56,767.4613037109375 +85.57,767.2073364257812 +85.58,766.9542846679688 +85.59,766.7099609375 +85.6,766.4664916992188 +85.61,766.227783203125 +85.62,765.9937744140625 +85.63,765.764404296875 +85.64,765.5319213867188 +85.65,765.3040771484375 +85.66,765.0808715820312 +85.67,764.8834228515625 +85.68,764.6902465820312 +85.69,764.5012817382812 +85.7,764.3164672851562 +85.71,764.1318969726562 +85.72,763.9553833007812 +85.73,763.7886352539062 +85.74,763.6258544921875 +85.75,763.4669189453125 +85.76,763.30224609375 +85.77,763.1298828125 +85.78,762.9595947265625 +85.79,762.7855224609375 +85.8,762.6154174804688 +85.81,762.4376831054688 +85.82,762.2639770507812 +85.83,762.09423828125 +85.84,761.9052734375 +85.85,761.716552734375 +85.86,761.5299682617188 +85.87,761.3397827148438 +85.88,761.1537475585938 +85.89,760.9717407226562 +85.9,760.7937622070312 +85.91,760.5908813476562 +85.92,760.384521484375 +85.93,760.1785888671875 +85.94,759.9635009765625 +85.95,759.7450561523438 +85.96,759.4962768554688 +85.97,759.2425537109375 +85.98,758.98974609375 +85.99,758.74169921875 +86,758.4984130859375 +86.01,758.2540893554688 +86.02,758.0028076171875 +86.03,757.7447509765625 +86.04,757.4722290039062 +86.05,757.195068359375 +86.06,756.8805541992188 +86.07,756.5638427734375 +86.08,756.2294921875 +86.09,755.8854370117188 +86.1,755.5432739257812 +86.11,755.2011108398438 +86.12,754.8589477539062 +86.13,754.518798828125 +86.14,754.1073608398438 +86.15,753.69287109375 +86.16,753.2753295898438 +86.17,752.8355712890625 +86.18,752.3777465820312 +86.19,751.9173583984375 +86.2,751.4390869140625 +86.21,750.9547729492188 +86.22,750.4471435546875 +86.23,749.947265625 +86.24,749.4530639648438 +86.25,748.962646484375 +86.26,748.47412109375 +86.27,747.9701538085938 +86.28,747.4547729492188 +86.29,746.9415893554688 +86.3,746.4363403320312 +86.31,745.9293212890625 +86.32,745.4263916015625 +86.33,744.9295043945312 +86.34,744.4116821289062 +86.35,743.8904418945312 +86.36,743.3716430664062 +86.37,742.8610229492188 +86.38,742.34130859375 +86.39,741.8297729492188 +86.4,741.3264770507812 +86.41,740.8292846679688 +86.42,740.3402099609375 +86.43,739.8572998046875 +86.44,739.3670043945312 +86.45,738.8963012695312 +86.46,738.4335327148438 +86.47,737.9747314453125 +86.48,737.50830078125 +86.49,737.0498046875 +86.5,736.59912109375 +86.51,736.15625 +86.52,735.7210693359375 +86.53,735.2801513671875 +86.54,734.8468627929688 +86.55,734.4020385742188 +86.56,733.9592895507812 +86.57,733.5242919921875 +86.58,733.102783203125 +86.59,732.6907958984375 +86.6,732.2727661132812 +86.61,731.8623046875 +86.62,731.45361328125 +86.63,731.0524291992188 +86.64,730.6663818359375 +86.65,730.2914428710938 +86.66,729.9236450195312 +86.67,729.5629272460938 +86.68,729.2054443359375 +86.69,728.8587646484375 +86.7,728.5189208984375 +86.71,728.1859741210938 +86.72,727.8597412109375 +86.73,727.536376953125 +86.74,727.2177124023438 +86.75,726.89794921875 +86.76,726.5771484375 +86.77,726.2572021484375 +86.78,725.94384765625 +86.79,725.6370239257812 +86.8,725.336669921875 +86.81,725.042724609375 +86.82,724.7532348632812 +86.83,724.4680786132812 +86.84,724.1891479492188 +86.85,723.9164428710938 +86.86,723.6497802734375 +86.87,723.3853759765625 +86.88,723.1250610351562 +86.89,722.8706665039062 +86.9,722.6202392578125 +86.91,722.3583984375 +86.92,722.1005859375 +86.93,721.8486938476562 +86.94,721.6044921875 +86.95,721.3660888671875 +86.96,721.1333618164062 +86.97,720.9061889648438 +86.98,720.6845703125 +86.99,720.468505859375 +87,720.2578125 +87.01,720.0582885742188 +87.02,719.8582153320312 +87.03,719.6691284179688 +87.04,719.4851684570312 +87.05,719.3004150390625 +87.06,719.12646484375 +87.07,718.9574584960938 +87.08,718.7874145507812 +87.09,718.6279907226562 +87.1,718.467529296875 +87.11,718.3193969726562 +87.12,718.1719970703125 +87.13,718.032958984375 +87.14,717.9041748046875 +87.15,717.7797241210938 +87.16,717.6690673828125 +87.17,717.5625 +87.18,717.4599609375 +87.19,717.3671264648438 +87.2,717.2723999023438 +87.21,717.1873168945312 +87.22,717.1001586914062 +87.23,717.0224609375 +87.24,716.9580078125 +87.25,716.89892578125 +87.26,716.854736328125 +87.27,716.815673828125 +87.28,716.7893676757812 +87.29,716.7755737304688 +87.3,716.7742309570312 +87.31,716.7755126953125 +87.32,716.7813720703125 +87.33,716.7897338867188 +87.34,716.800537109375 +87.35,716.8137817382812 +87.36,716.829345703125 +87.37,716.8452758789062 +87.38,716.863525390625 +87.39,716.86865234375 +87.4,716.8645629882812 +87.41,716.8533325195312 +87.42,716.8272705078125 +87.43,716.7960815429688 +87.44,716.765625 +87.45,716.7223510742188 +87.46,716.6492309570312 +87.47,716.5426025390625 +87.48,716.4296875 +87.49,716.3125 +87.5,716.156494140625 +87.51,715.9793701171875 +87.52,715.78125 +87.53,715.5336303710938 +87.54,715.2697143554688 +87.55,714.98193359375 +87.56,714.6781616210938 +87.57,714.3682861328125 +87.58,714.0485229492188 +87.59,713.7343139648438 +87.6,713.425537109375 +87.61,713.1221923828125 +87.62,712.8434448242188 +87.63,712.56982421875 +87.64,712.3184814453125 +87.65,712.0797119140625 +87.66,711.8533325195312 +87.67,711.656494140625 +87.68,711.5081176757812 +87.69,711.365478515625 +87.7,711.2553100585938 +87.71,711.17919921875 +87.72,711.1426391601562 +87.73,711.1220703125 +87.74,711.1941528320312 +87.75,711.27734375 +87.76,711.3675537109375 +87.77,711.458984375 +87.78,711.551513671875 +87.79,711.6528930664062 +87.8,711.791748046875 +87.81,711.9522705078125 +87.82,712.114990234375 +87.83,712.2778930664062 +87.84,712.4410400390625 +87.85,712.6043090820312 +87.86,712.7658081054688 +87.87,712.9063110351562 +87.88,712.9932861328125 +87.89,713.0331420898438 +87.9,713.0684814453125 +87.91,713.1050415039062 +87.92,713.1428833007812 +87.93,713.1801147460938 +87.94,713.2089233398438 +87.95,713.25048828125 +87.96,713.2816772460938 +87.97,713.3082885742188 +87.98,713.336181640625 +87.99,713.3595581054688 +88,713.3822021484375 +88.01,713.4060668945312 +88.02,713.4158325195312 +88.03,713.4269409179688 +88.04,713.4393310546875 +88.05,713.4453125 +88.06,713.4525756835938 +88.07,713.4611206054688 +88.08,713.470947265625 +88.09,713.4819946289062 +88.1,713.4846801757812 +88.11,713.4617919921875 +88.12,713.4404296875 +88.13,713.4205932617188 +88.14,713.4022216796875 +88.15,713.3392333984375 +88.16,713.255126953125 +88.17,713.1731567382812 +88.18,713.0836791992188 +88.19,712.9925537109375 +88.2,712.901611328125 +88.21,712.8109130859375 +88.22,712.7166748046875 +88.23,712.5881958007812 +88.24,712.4450073242188 +88.25,712.3006591796875 +88.26,712.1552124023438 +88.27,712.0048828125 +88.28,711.8515014648438 +88.29,711.6932983398438 +88.3,711.5283813476562 +88.31,711.3453369140625 +88.32,711.144287109375 +88.33,710.9447021484375 +88.34,710.7445678710938 +88.35,710.5363159179688 +88.36,710.33154296875 +88.37,710.1262817382812 +88.38,709.9033813476562 +88.39,709.670654296875 +88.4,709.437744140625 +88.41,709.1951904296875 +88.42,708.9450073242188 +88.43,708.6968383789062 +88.44,708.4410400390625 +88.45,708.145263671875 +88.46,707.8328247070312 +88.47,707.517333984375 +88.48,707.2026977539062 +88.49,706.87548828125 +88.5,706.5340576171875 +88.51,706.1956176757812 +88.52,705.8564453125 +88.53,705.5127563476562 +88.54,705.1703491210938 +88.55,704.8272705078125 +88.56,704.4835815429688 +88.57,704.14501953125 +88.58,703.8115844726562 +88.59,703.4697875976562 +88.6,703.12744140625 +88.61,702.7960815429688 +88.62,702.4697875976562 +88.63,702.1658935546875 +88.64,701.8668823242188 +88.65,701.5726928710938 +88.66,701.273681640625 +88.67,700.9795532226562 +88.68,700.6902465820312 +88.69,700.4057006835938 +88.7,700.1181640625 +88.71,699.8335571289062 +88.72,699.5498657226562 +88.73,699.2709350585938 +88.74,698.9967651367188 +88.75,698.725341796875 +88.76,698.4528198242188 +88.77,698.1754760742188 +88.78,697.9086303710938 +88.79,697.6464233398438 +88.8,697.3887939453125 +88.81,697.1300659179688 +88.82,696.8759155273438 +88.83,696.6320190429688 +88.84,696.3926391601562 +88.85,696.1575927734375 +88.86,695.9269409179688 +88.87,695.7025756835938 +88.88,695.4824829101562 +88.89,695.2666015625 +88.9,695.0721435546875 +88.91,694.8816528320312 +88.92,694.7467651367188 +88.93,694.6248168945312 +88.94,694.506103515625 +88.95,694.3981323242188 +88.96,694.3085327148438 +88.97,694.2371215820312 +88.98,694.202880859375 +88.99,694.207275390625 +89,694.2979125976562 +89.01,694.4028930664062 +89.02,694.6160278320312 +89.03,694.8287353515625 +89.04,695.041015625 +89.05,695.2528686523438 +89.06,695.4641723632812 +89.07,695.6212158203125 +89.08,695.7648315429688 +89.09,695.89501953125 +89.1,696.015869140625 +89.11,696.1331787109375 +89.12,696.1549072265625 +89.13,696.1414794921875 +89.14,696.104736328125 +89.15,696.0506591796875 +89.16,695.9736328125 +89.17,695.8624267578125 +89.18,695.7250366210938 +89.19,695.5712890625 +89.2,695.4014282226562 +89.21,695.2232055664062 +89.22,695.0405883789062 +89.23,694.8153076171875 +89.24,694.536376953125 +89.25,694.2177734375 +89.26,693.8885498046875 +89.27,693.5642700195312 +89.28,693.2084350585938 +89.29,692.8329467773438 +89.3,692.3671875 +89.31,691.8906860351562 +89.32,691.4053955078125 +89.33,690.8865966796875 +89.34,690.36328125 +89.35,689.8375244140625 +89.36,689.2654418945312 +89.37,688.7010498046875 +89.38,688.1309814453125 +89.39,687.568603515625 +89.4,687.0120239257812 +89.41,686.463134765625 +89.42,685.9142456054688 +89.43,685.373046875 +89.44,684.8489990234375 +89.45,684.3362426757812 +89.46,683.8346557617188 +89.47,683.3710327148438 +89.48,682.9334106445312 +89.49,682.5101928710938 +89.5,682.097412109375 +89.51,681.6948852539062 +89.52,681.298828125 +89.53,680.9052734375 +89.54,680.5142822265625 +89.55,680.129638671875 +89.56,679.7513427734375 +89.57,679.3773803710938 +89.58,679.0057983398438 +89.59,678.6232299804688 +89.6,678.2412719726562 +89.61,677.8656616210938 +89.62,677.4945068359375 +89.63,677.129638671875 +89.64,676.77099609375 +89.65,676.4013061523438 +89.66,676.0169067382812 +89.67,675.6389770507812 +89.68,675.2731323242188 +89.69,674.91357421875 +89.7,674.5546264648438 +89.71,674.201904296875 +89.72,673.8554077148438 +89.73,673.5130615234375 +89.74,673.1749877929688 +89.75,672.8428955078125 +89.76,672.5092163085938 +89.77,672.15869140625 +89.78,671.8125 +89.79,671.4725341796875 +89.8,671.138671875 +89.81,670.7955932617188 +89.82,670.4739990234375 +89.83,670.1431274414062 +89.84,669.8335571289062 +89.85,669.5299072265625 +89.86,669.2244262695312 +89.87,668.9381103515625 +89.88,668.657470703125 +89.89,668.3690185546875 +89.9,668.109130859375 +89.91,667.848876953125 +89.92,667.5940551757812 +89.93,667.344482421875 +89.94,667.1002197265625 +89.95,666.8611450195312 +89.96,666.6195678710938 +89.97,666.37744140625 +89.98,666.1404418945312 +89.99,665.8914184570312 +90,665.6476440429688 +90.01,665.4090576171875 +90.02,665.1755981445312 +90.03,664.9472045898438 +90.04,664.723876953125 +90.05,664.5131225585938 +90.06,664.31103515625 +90.07,664.1136474609375 +90.08,663.9228515625 +90.09,663.7423706054688 +90.1,663.5682983398438 +90.11,663.4024658203125 +90.12,663.240966796875 +90.13,663.0989990234375 +90.14,662.96875 +90.15,662.8462524414062 +90.16,662.740966796875 +90.17,662.6527099609375 +90.18,662.5697631835938 +90.19,662.497802734375 +90.2,662.4520263671875 +90.21,662.4110717773438 +90.22,662.3959350585938 +90.23,662.3872680664062 +90.24,662.3887329101562 +90.25,662.3964233398438 +90.26,662.4273681640625 +90.27,662.4603271484375 +90.28,662.5067138671875 +90.29,662.554931640625 +90.3,662.6049194335938 +90.31,662.6451416015625 +90.32,662.6871337890625 +90.33,662.7289428710938 +90.34,662.7724609375 +90.35,662.8176879882812 +90.36,662.866455078125 +90.37,662.9148559570312 +90.38,662.9571533203125 +90.39,663.0010375976562 +90.4,663.0464477539062 +90.41,663.0838012695312 +90.42,663.095947265625 +90.43,663.0984497070312 +90.44,663.102783203125 +90.45,663.1069946289062 +90.46,663.0996704101562 +90.47,663.0885620117188 +90.48,663.0602416992188 +90.49,663.0225830078125 +90.5,662.987060546875 +90.51,662.9517822265625 +90.52,662.9186401367188 +90.53,662.8856201171875 +90.54,662.8241577148438 +90.55,662.7326049804688 +90.56,662.6303100585938 +90.57,662.5308227539062 +90.58,662.4148559570312 +90.59,662.2788696289062 +90.6,662.113525390625 +90.61,661.9515380859375 +90.62,661.77001953125 +90.63,661.5901489257812 +90.64,661.4080810546875 +90.65,661.2181396484375 +90.66,661.0089111328125 +90.67,660.7825317382812 +90.68,660.5277709960938 +90.69,660.2754516601562 +90.7,660.002685546875 +90.71,659.7210693359375 +90.72,659.4212036132812 +90.73,659.1261596679688 +90.74,658.824462890625 +90.75,658.510498046875 +90.76,658.1729125976562 +90.77,657.8349609375 +90.78,657.4851684570312 +90.79,657.1198120117188 +90.8,656.7562255859375 +90.81,656.37353515625 +90.82,655.9852294921875 +90.83,655.5819091796875 +90.84,655.16748046875 +90.85,654.7402954101562 +90.86,654.3194580078125 +90.87,653.903076171875 +90.88,653.4854125976562 +90.89,653.0740966796875 +90.9,652.6366577148438 +90.91,652.2058715820312 +90.92,651.7816162109375 +90.93,651.3524780273438 +90.94,650.9356689453125 +90.95,650.5253295898438 +90.96,650.1194458007812 +90.97,649.719970703125 +90.98,649.328857421875 +90.99,648.9534912109375 +91,648.5843505859375 +91.01,648.2212524414062 +91.02,647.8662109375 +91.03,647.5247192382812 +91.04,647.1890869140625 +91.05,646.866943359375 +91.06,646.5485229492188 +91.07,646.2396240234375 +91.08,645.9476928710938 +91.09,645.6611328125 +91.1,645.3798828125 +91.11,645.1002197265625 +91.12,644.8181762695312 +91.13,644.5414428710938 +91.14,644.2662353515625 +91.15,643.98291015625 +91.16,643.6934814453125 +91.17,643.4056396484375 +91.18,643.1231689453125 +91.19,642.8460693359375 +91.2,642.5742797851562 +91.21,642.3058471679688 +91.22,642.0426025390625 +91.23,641.7845458984375 +91.24,641.5087890625 +91.25,641.228759765625 +91.26,640.9464721679688 +91.27,640.6448364257812 +91.28,640.343017578125 +91.29,640.044921875 +91.3,639.7467041015625 +91.31,639.459716796875 +91.32,639.1725463867188 +91.33,638.8907470703125 +91.34,638.6143798828125 +91.35,638.3433837890625 +91.36,638.0776977539062 +91.37,637.8172607421875 +91.38,637.5714721679688 +91.39,637.3402709960938 +91.4,637.12158203125 +91.41,636.9114990234375 +91.42,636.7098388671875 +91.43,636.524169921875 +91.44,636.3428955078125 +91.45,636.1698608398438 +91.46,636.0296020507812 +91.47,635.8970947265625 +91.48,635.7893676757812 +91.49,635.6947631835938 +91.5,635.6397705078125 +91.51,635.6068115234375 +91.52,635.58984375 +91.53,635.5850219726562 +91.54,635.5845336914062 +91.55,635.5997314453125 +91.56,635.6170654296875 +91.57,635.6707763671875 +91.58,635.7261962890625 +91.59,635.783203125 +91.6,635.8418579101562 +91.61,635.902099609375 +91.62,635.94287109375 +91.63,635.9853515625 +91.64,636.0294189453125 +91.65,636.0960693359375 +91.66,636.1659545898438 +91.67,636.2485961914062 +91.68,636.3418579101562 +91.69,636.43994140625 +91.7,636.5389404296875 +91.71,636.6483154296875 +91.72,636.7584228515625 +91.73,636.87109375 +91.74,636.9729614257812 +91.75,637.06982421875 +91.76,637.1674194335938 +91.77,637.2638549804688 +91.78,637.3551635742188 +91.79,637.4320068359375 +91.8,637.5020751953125 +91.81,637.5653076171875 +91.82,637.6256713867188 +91.83,637.6832275390625 +91.84,637.7169189453125 +91.85,637.7060546875 +91.86,637.69677734375 +91.87,637.6052856445312 +91.88,637.5104370117188 +91.89,637.4066772460938 +91.9,637.305419921875 +91.91,637.200927734375 +91.92,637.0951538085938 +91.93,636.9843139648438 +91.94,636.8665161132812 +91.95,636.6943359375 +91.96,636.5215454101562 +91.97,636.3424072265625 +91.98,636.0923461914062 +91.99,635.8140258789062 +92,635.5286865234375 +92.01,635.2096557617188 +92.02,634.8897094726562 +92.03,634.5289306640625 +92.04,634.148681640625 +92.05,633.7340087890625 +92.06,633.3062133789062 +92.07,632.882568359375 +92.08,632.4611206054688 +92.09,632.0323486328125 +92.1,631.5983276367188 +92.11,631.1438598632812 +92.12,630.6825561523438 +92.13,630.21826171875 +92.14,629.7605590820312 +92.15,629.3037109375 +92.16,628.849609375 +92.17,628.3831176757812 +92.18,627.92333984375 +92.19,627.4513549804688 +92.2,626.9842529296875 +92.21,626.5126342773438 +92.22,626.0478515625 +92.23,625.5899658203125 +92.24,625.138916015625 +92.25,624.6946411132812 +92.26,624.2646484375 +92.27,623.8412475585938 +92.28,623.43017578125 +92.29,623.0445556640625 +92.3,622.6651000976562 +92.31,622.293701171875 +92.32,621.93603515625 +92.33,621.5842895507812 +92.34,621.238525390625 +92.35,620.9043579101562 +92.36,620.5816040039062 +92.37,620.304443359375 +92.38,620.076171875 +92.39,619.890625 +92.4,619.732177734375 +92.41,619.5776977539062 +92.42,619.4384765625 +92.43,619.3068237304688 +92.44,619.1997680664062 +92.45,619.1284790039062 +92.46,619.0696411132812 +92.47,619.0517578125 +92.48,619.0819091796875 +92.49,619.1216430664062 +92.5,619.1669311523438 +92.51,619.2138671875 +92.52,619.2625122070312 +92.53,619.3128051757812 +92.54,619.3646850585938 +92.55,619.33056640625 +92.56,619.289306640625 +92.57,619.2505493164062 +92.58,619.2122802734375 +92.59,619.1574096679688 +92.6,619.1032104492188 +92.61,619.0476684570312 +92.62,618.9984741210938 +92.63,618.9517211914062 +92.64,618.9073486328125 +92.65,618.88623046875 +92.66,618.874755859375 +92.67,618.9262084960938 +92.68,618.9827880859375 +92.69,619.0405883789062 +92.7,619.099609375 +92.71,619.1597900390625 +92.72,619.2229614257812 +92.73,619.2853393554688 +92.74,619.3468017578125 +92.75,619.39990234375 +92.76,619.4540405273438 +92.77,619.50927734375 +92.78,619.561767578125 +92.79,619.6152954101562 +92.8,619.666015625 +92.81,619.6815795898438 +92.82,619.6870727539062 +92.83,619.6616821289062 +92.84,619.6323852539062 +92.85,619.572509765625 +92.86,619.4729614257812 +92.87,619.3549194335938 +92.88,619.2395629882812 +92.89,619.1268920898438 +92.9,619.00732421875 +92.91,618.8904418945312 +92.92,618.7857055664062 +92.93,618.6834716796875 +92.94,618.5856323242188 +92.95,618.4940185546875 +92.96,618.4085693359375 +92.97,618.325439453125 +92.98,618.2407836914062 +92.99,618.1622314453125 +93,618.0858764648438 +93.01,618.0078735351562 +93.02,617.9320678710938 +93.03,617.8565673828125 +93.04,617.7794189453125 +93.05,617.6873168945312 +93.06,617.5880126953125 +93.07,617.4911499023438 +93.08,617.3643188476562 +93.09,617.2382202148438 +93.1,617.1128540039062 +93.11,616.9826049804688 +93.12,616.8416748046875 +93.13,616.6998291015625 +93.14,616.558837890625 +93.15,616.4074096679688 +93.16,616.2418212890625 +93.17,616.0545654296875 +93.18,615.8326416015625 +93.19,615.5687866210938 +93.2,615.3033447265625 +93.21,614.9813842773438 +93.22,614.6450805664062 +93.23,614.262451171875 +93.24,613.8795166015625 +93.25,613.48876953125 +93.26,613.0371704101562 +93.27,612.5576171875 +93.28,612.065673828125 +93.29,611.5803833007812 +93.3,611.1016845703125 +93.31,610.629638671875 +93.32,610.1641845703125 +93.33,609.7127685546875 +93.34,609.2734985351562 +93.35,608.8538208007812 +93.36,608.4725341796875 +93.37,608.1217041015625 +93.38,607.8104858398438 +93.39,607.5062255859375 +93.4,607.2506713867188 +93.41,607.0072021484375 +93.42,606.7871704101562 +93.43,606.5827026367188 +93.44,606.4277954101562 +93.45,606.285888671875 +93.46,606.187255859375 +93.47,606.0952758789062 +93.48,606.0194702148438 +93.49,605.9501342773438 +93.5,605.8928833007812 +93.51,605.8590087890625 +93.52,605.8500366210938 +93.53,605.8619995117188 +93.54,605.88330078125 +93.55,605.9061889648438 +93.56,605.9305419921875 +93.57,605.9564819335938 +93.58,605.9838256835938 +93.59,605.99169921875 +93.6,606.001220703125 +93.61,606.0123291015625 +93.62,606.02490234375 +93.63,606.0390625 +93.64,606.0546264648438 +93.65,606.0830078125 +93.66,606.1127319335938 +93.67,606.1436767578125 +93.68,606.1758422851562 +93.69,606.209228515625 +93.7,606.2437744140625 +93.71,606.2698974609375 +93.72,606.2800903320312 +93.73,606.287841796875 +93.74,606.2627563476562 +93.75,606.218505859375 +93.76,606.1760864257812 +93.77,606.135498046875 +93.78,606.0777587890625 +93.79,606.0105590820312 +93.8,605.9435424804688 +93.81,605.874755859375 +93.82,605.77392578125 +93.83,605.6754150390625 +93.84,605.5792846679688 +93.85,605.4854736328125 +93.86,605.39404296875 +93.87,605.301025390625 +93.88,605.2103271484375 +93.89,605.1218872070312 +93.9,605.0509033203125 +93.91,604.98193359375 +93.92,604.8941650390625 +93.93,604.8047485351562 +93.94,604.7156982421875 +93.95,604.5946655273438 +93.96,604.4591674804688 +93.97,604.31494140625 +93.98,604.1640014648438 +93.99,604.0026245117188 +94,603.802490234375 +94.01,603.5924682617188 +94.02,603.3782958984375 +94.03,603.1467895507812 +94.04,602.9114379882812 +94.05,602.6741333007812 +94.06,602.4349365234375 +94.07,602.138916015625 +94.08,601.830322265625 +94.09,601.5035400390625 +94.1,601.1796875 +94.11,600.8151245117188 +94.12,600.4424438476562 +94.13,600.0277709960938 +94.14,599.6075439453125 +94.15,599.1515502929688 +94.16,598.6468505859375 +94.17,598.1489868164062 +94.18,597.6559448242188 +94.19,597.1658935546875 +94.2,596.6825561523438 +94.21,596.1926879882812 +94.22,595.707763671875 +94.23,595.2296752929688 +94.24,594.750732421875 +94.25,594.2786254882812 +94.26,593.813232421875 +94.27,593.381103515625 +94.28,592.9705200195312 +94.29,592.5680541992188 +94.3,592.1736450195312 +94.31,591.80615234375 +94.32,591.4766235351562 +94.33,591.1544799804688 +94.34,590.8605346679688 +94.35,590.5773315429688 +94.36,590.3048095703125 +94.37,590.0391235351562 +94.38,589.7821044921875 +94.39,589.584716796875 +94.4,589.3914794921875 +94.41,589.2117919921875 +94.42,589.0360717773438 +94.43,588.8681030273438 +94.44,588.7058715820312 +94.45,588.5512084960938 +94.46,588.4002075195312 +94.47,588.260498046875 +94.48,588.1280517578125 +94.49,587.9990844726562 +94.5,587.8886108398438 +94.51,587.7813720703125 +94.52,587.67724609375 +94.53,587.5762939453125 +94.54,587.4783935546875 +94.55,587.3834838867188 +94.56,587.3048706054688 +94.57,587.2328491210938 +94.58,587.16357421875 +94.59,587.0932006835938 +94.6,587.0160522460938 +94.61,586.9415893554688 +94.62,586.869873046875 +94.63,586.80078125 +94.64,586.7135009765625 +94.65,586.6271362304688 +94.66,586.5169677734375 +94.67,586.4022216796875 +94.68,586.2772827148438 +94.69,586.1478881835938 +94.7,586.0179443359375 +94.71,585.8912353515625 +94.72,585.7676391601562 +94.73,585.6282348632812 +94.74,585.4883422851562 +94.75,585.3062133789062 +94.76,585.116455078125 +94.77,584.9247436523438 +94.78,584.7330932617188 +94.79,584.5376586914062 +94.8,584.3403930664062 +94.81,584.0447998046875 +94.82,583.7521362304688 +94.83,583.4625244140625 +94.84,583.13232421875 +94.85,582.78662109375 +94.86,582.3990478515625 +94.87,581.99658203125 +94.88,581.5775146484375 +94.89,581.1420288085938 +94.9,580.6846313476562 +94.91,580.2321166992188 +94.92,579.7655029296875 +94.93,579.2982177734375 +94.94,578.8283081054688 +94.95,578.3598022460938 +94.96,577.8812255859375 +94.97,577.40966796875 +94.98,576.9244995117188 +94.99,576.4105834960938 +95,575.9042358398438 +95.01,575.403564453125 +95.02,574.9103393554688 +95.03,574.424560546875 +95.04,573.9461059570312 +95.05,573.4750366210938 +95.06,573.0093383789062 +95.07,572.5509033203125 +95.08,572.0996704101562 +95.09,571.6555786132812 +95.1,571.2186279296875 +95.11,570.7678833007812 +95.12,570.3243408203125 +95.13,569.8804321289062 +95.14,569.4436645507812 +95.15,569.0140380859375 +95.16,568.6065063476562 +95.17,568.2096557617188 +95.18,567.8195190429688 +95.19,567.43994140625 +95.2,567.08203125 +95.21,566.7305297851562 +95.22,566.3853759765625 +95.23,566.0484008789062 +95.24,565.7289428710938 +95.25,565.425048828125 +95.26,565.1383056640625 +95.27,564.8724365234375 +95.28,564.6138916015625 +95.29,564.3853149414062 +95.3,564.1656494140625 +95.31,563.9661254882812 +95.32,563.7713623046875 +95.33,563.5813598632812 +95.34,563.39599609375 +95.35,563.2171630859375 +95.36,563.0428466796875 +95.37,562.873046875 +95.38,562.7077026367188 +95.39,562.5580444335938 +95.4,562.4012451171875 +95.41,562.2487182617188 +95.42,562.1212158203125 +95.43,561.9976196289062 +95.44,561.857177734375 +95.45,561.70751953125 +95.46,561.5582275390625 +95.47,561.4073486328125 +95.48,561.2435913085938 +95.49,561.0822143554688 +95.5,560.925048828125 +95.51,560.7550048828125 +95.52,560.58544921875 +95.53,560.4069213867188 +95.54,560.1950073242188 +95.55,559.9424438476562 +95.56,559.6722412109375 +95.57,559.4036254882812 +95.58,559.125244140625 +95.59,558.8427124023438 +95.6,558.507080078125 +95.61,558.1660766601562 +95.62,557.8141479492188 +95.63,557.44384765625 +95.64,557.027099609375 +95.65,556.6153564453125 +95.66,556.1934204101562 +95.67,555.7445068359375 +95.68,555.2952880859375 +95.69,554.8457641601562 +95.7,554.403564453125 +95.71,553.9685668945312 +95.72,553.5407104492188 +95.73,553.1238403320312 +95.74,552.7139892578125 +95.75,552.3299560546875 +95.76,551.9658203125 +95.77,551.6327514648438 +95.78,551.3097534179688 +95.79,551.0060424804688 +95.8,550.7138671875 +95.81,550.4483032226562 +95.82,550.2070922851562 +95.83,549.9900512695312 +95.84,549.7817993164062 +95.85,549.5993041992188 +95.86,549.45166015625 +95.87,549.3101806640625 +95.88,549.2049560546875 +95.89,549.1168212890625 +95.9,549.0322875976562 +95.91,548.9513549804688 +95.92,548.8889770507812 +95.93,548.8148803710938 +95.94,548.744140625 +95.95,548.6729736328125 +95.96,548.6051025390625 +95.97,548.54052734375 +95.98,548.4791870117188 +95.99,548.4248046875 +96,548.3734741210938 +96.01,548.3251953125 +96.02,548.2855224609375 +96.03,548.2506103515625 +96.04,548.2222900390625 +96.05,548.1966552734375 +96.06,548.1737060546875 +96.07,548.1533813476562 +96.08,548.1393432617188 +96.09,548.1240234375 +96.1,548.1111450195312 +96.11,548.1007080078125 +96.12,548.0794067382812 +96.13,548.0510864257812 +96.14,548.0252685546875 +96.15,548.0018920898438 +96.16,547.9808959960938 +96.17,547.9623413085938 +96.18,547.946044921875 +96.19,547.93017578125 +96.2,547.9146728515625 +96.21,547.9013671875 +96.22,547.9054565429688 +96.23,547.8963623046875 +96.24,547.904541015625 +96.25,547.9146118164062 +96.26,547.9114379882812 +96.27,547.8743896484375 +96.28,547.8396606445312 +96.29,547.8052978515625 +96.3,547.7675170898438 +96.31,547.7036743164062 +96.32,547.63671875 +96.33,547.5704345703125 +96.34,547.4443359375 +96.35,547.317626953125 +96.36,547.1903076171875 +96.37,547.0585327148438 +96.38,546.8771362304688 +96.39,546.68994140625 +96.4,546.4291381835938 +96.41,546.1709594726562 +96.42,545.8758544921875 +96.43,545.576171875 +96.44,545.226806640625 +96.45,544.8471069335938 +96.46,544.427978515625 +96.47,544.0112915039062 +96.48,543.5462036132812 +96.49,543.0728149414062 +96.5,542.6025390625 +96.51,542.1334228515625 +96.52,541.66748046875 +96.53,541.2084350585938 +96.54,540.7391967773438 +96.55,540.265625 +96.56,539.7953491210938 +96.57,539.3320922851562 +96.58,538.8757934570312 +96.59,538.4302368164062 +96.6,538.0198364257812 +96.61,537.6234741210938 +96.62,537.2447509765625 +96.63,536.8741455078125 +96.64,536.5172119140625 +96.65,536.18701171875 +96.66,535.8870849609375 +96.67,535.5925903320312 +96.68,535.3298950195312 +96.69,535.079833984375 +96.7,534.89501953125 +96.71,534.723876953125 +96.72,534.5569458007812 +96.73,534.4298706054688 +96.74,534.308349609375 +96.75,534.2055053710938 +96.76,534.1173706054688 +96.77,534.0381469726562 +96.78,533.9620361328125 +96.79,533.8889770507812 +96.8,533.8189697265625 +96.81,533.7462768554688 +96.82,533.6747436523438 +96.83,533.6061401367188 +96.84,533.5404663085938 +96.85,533.4550170898438 +96.86,533.3726806640625 +96.87,533.2989501953125 +96.88,533.2225341796875 +96.89,533.1470947265625 +96.9,533.0745849609375 +96.91,533.0049438476562 +96.92,532.9173583984375 +96.93,532.8289794921875 +96.94,532.7379760742188 +96.95,532.6367797851562 +96.96,532.5236206054688 +96.97,532.41357421875 +96.98,532.289794921875 +96.99,532.1693115234375 +97,532.0520629882812 +97.01,531.9342651367188 +97.02,531.8121337890625 +97.03,531.6688232421875 +97.04,531.5250854492188 +97.05,531.3810424804688 +97.06,531.2348022460938 +97.07,531.0619506835938 +97.08,530.8740234375 +97.09,530.6861572265625 +97.1,530.490966796875 +97.11,530.277099609375 +97.12,530.0504760742188 +97.13,529.81494140625 +97.14,529.5650024414062 +97.15,529.31396484375 +97.16,529.0336303710938 +97.17,528.7355346679688 +97.18,528.43310546875 +97.19,528.12451171875 +97.2,527.7815551757812 +97.21,527.4310302734375 +97.22,527.0617065429688 +97.23,526.6776123046875 +97.24,526.2994995117188 +97.25,525.8484497070312 +97.26,525.4003295898438 +97.27,524.9496459960938 +97.28,524.4793701171875 +97.29,524.0123901367188 +97.3,523.546875 +97.31,523.08837890625 +97.32,522.62744140625 +97.33,522.173583984375 +97.34,521.7267456054688 +97.35,521.2962646484375 +97.36,520.8744506835938 +97.37,520.46875 +97.38,520.071533203125 +97.39,519.692138671875 +97.4,519.3247680664062 +97.41,519.0050048828125 +97.42,518.698486328125 +97.43,518.4315185546875 +97.44,518.209228515625 +97.45,517.99365234375 +97.46,517.7902221679688 +97.47,517.6177368164062 +97.48,517.4664306640625 +97.49,517.334228515625 +97.5,517.2283935546875 +97.51,517.1260986328125 +97.52,517.0272827148438 +97.53,516.9375 +97.54,516.8567504882812 +97.55,516.7791748046875 +97.56,516.6991577148438 +97.57,516.6015625 +97.58,516.4998168945312 +97.59,516.3882446289062 +97.6,516.2763671875 +97.61,516.1679077148438 +97.62,516.0497436523438 +97.63,515.9312133789062 +97.64,515.8012084960938 +97.65,515.6747436523438 +97.66,515.5480346679688 +97.67,515.4022827148438 +97.68,515.254638671875 +97.69,515.10693359375 +97.7,514.9423217773438 +97.71,514.7740478515625 +97.72,514.60595703125 +97.73,514.4380493164062 +97.74,514.2684326171875 +97.75,514.0819702148438 +97.76,513.899658203125 +97.77,513.7213745117188 +97.78,513.54150390625 +97.79,513.3656005859375 +97.8,513.1918334960938 +97.81,513.016357421875 +97.82,512.8523559570312 +97.83,512.6921997070312 +97.84,512.5396118164062 +97.85,512.392578125 +97.86,512.2510986328125 +97.87,512.1151123046875 +97.88,511.993896484375 +97.89,511.88165283203125 +97.9,511.78021240234375 +97.91,511.6894226074219 +97.92,511.61669921875 +97.93,511.56182861328125 +97.94,511.4945373535156 +97.95,511.4299621582031 +97.96,511.36810302734375 +97.97,511.2938232421875 +97.98,511.2147521972656 +97.99,511.13287353515625 +98,511.0312194824219 +98.01,510.911865234375 +98.02,510.7618713378906 +98.03,510.54766845703125 +98.04,510.3150939941406 +98.05,510.0417785644531 +98.06,509.72247314453125 +98.07,509.37091064453125 +98.08,508.99298095703125 +98.09,508.5101623535156 +98.1,508.0287170410156 +98.11,507.5448913574219 +98.12,507.0475158691406 +98.13,506.5310974121094 +98.14,506.0090026855469 +98.15,505.46636962890625 +98.16,504.9315490722656 +98.17,504.35003662109375 +98.18,503.77679443359375 +98.19,503.2117614746094 +98.2,502.6455383300781 +98.21,502.0875244140625 +98.22,501.54144287109375 +98.23,501.0090637207031 +98.24,500.48468017578125 +98.25,499.9925537109375 +98.26,499.5080261230469 +98.27,499.0404357910156 +98.28,498.5971374511719 +98.29,498.1685791015625 +98.3,497.7489013671875 +98.31,497.3418273925781 +98.32,496.9416198730469 +98.33,496.55010986328125 +98.34,496.17095947265625 +98.35,495.8040466308594 +98.36,495.4436340332031 +98.37,495.0896911621094 +98.38,494.74212646484375 +98.39,494.40087890625 +98.4,494.0509033203125 +98.41,493.7073059082031 +98.42,493.3587646484375 +98.43,493.0109558105469 +98.44,492.6676025390625 +98.45,492.3175048828125 +98.46,491.95501708984375 +98.47,491.5878601074219 +98.48,491.2235107421875 +98.49,490.8583068847656 +98.5,490.49969482421875 +98.51,490.1307067871094 +98.52,489.76275634765625 +98.53,489.3864440917969 +98.54,489.01690673828125 +98.55,488.6484375 +98.56,488.2829284667969 +98.57,487.8940734863281 +98.58,487.4990234375 +98.59,487.1091003417969 +98.6,486.7204895019531 +98.61,486.3388366699219 +98.62,485.96221923828125 +98.63,485.5736999511719 +98.64,485.1846618652344 +98.65,484.7969665527344 +98.66,484.4031677246094 +98.67,484.0032958984375 +98.68,483.5993347167969 +98.69,483.2025451660156 +98.7,482.805419921875 +98.71,482.41351318359375 +98.72,482.0268859863281 +98.73,481.6435241699219 +98.74,481.26153564453125 +98.75,480.87908935546875 +98.76,480.5036926269531 +98.77,480.13525390625 +98.78,479.77001953125 +98.79,479.40972900390625 +98.8,479.054443359375 +98.81,478.7077941894531 +98.82,478.3697509765625 +98.83,478.038330078125 +98.84,477.72283935546875 +98.85,477.4211730957031 +98.86,477.1276550292969 +98.87,476.8440246582031 +98.88,476.57586669921875 +98.89,476.33984375 +98.9,476.11309814453125 +98.91,475.8992919921875 +98.92,475.7001647949219 +98.93,475.5324401855469 +98.94,475.3732604980469 +98.95,475.23193359375 +98.96,475.0989074707031 +98.97,474.97589111328125 +98.98,474.8572082519531 +98.99,474.7783203125 +99,474.7164001464844 +99.01,474.671142578125 +99.02,474.6593017578125 +99.03,474.6861572265625 +99.04,474.7475280761719 +99.05,474.81109619140625 +99.06,474.8768005371094 +99.07,474.9464416503906 +99.08,475.01812744140625 +99.09,475.0936279296875 +99.1,475.16729736328125 +99.11,475.2428283691406 +99.12,475.2957763671875 +99.13,475.3432312011719 +99.14,475.3889465332031 +99.15,475.3841552734375 +99.16,475.38189697265625 +99.17,475.3652648925781 +99.18,475.34368896484375 +99.19,475.3247375488281 +99.2,475.302734375 +99.21,475.27581787109375 +99.22,475.2458801269531 +99.23,475.21856689453125 +99.24,475.1938171386719 +99.25,475.1640625 +99.26,475.13128662109375 +99.27,475.10107421875 +99.28,475.0752258300781 +99.29,475.05181884765625 +99.3,475.03082275390625 +99.31,474.99908447265625 +99.32,474.9566345214844 +99.33,474.916748046875 +99.34,474.87933349609375 +99.35,474.8443908691406 +99.36,474.79876708984375 +99.37,474.7556457519531 +99.38,474.7149963378906 +99.39,474.6767578125 +99.4,474.6408996582031 +99.41,474.6073913574219 +99.42,474.5762023925781 +99.43,474.5472717285156 +99.44,474.514892578125 +99.45,474.46978759765625 +99.46,474.41766357421875 +99.47,474.3548583984375 +99.48,474.29266357421875 +99.49,474.2160949707031 +99.5,474.13653564453125 +99.51,474.0127868652344 +99.52,473.8789978027344 +99.53,473.694091796875 +99.54,473.49603271484375 +99.55,473.2756042480469 +99.56,473.02557373046875 +99.57,472.7518615722656 +99.58,472.48095703125 +99.59,472.2015686035156 +99.6,471.8651428222656 +99.61,471.5284118652344 +99.62,471.1652526855469 +99.63,470.7497253417969 +99.64,470.33856201171875 +99.65,469.9279479980469 +99.66,469.52349853515625 +99.67,469.05419921875 +99.68,468.5823669433594 +99.69,468.0931396484375 +99.7,467.6109924316406 +99.71,467.13592529296875 +99.72,466.69219970703125 +99.73,466.25518798828125 +99.74,465.8267517089844 +99.75,465.4049377441406 +99.76,464.9934387207031 +99.77,464.5902404785156 +99.78,464.20660400390625 +99.79,463.84600830078125 +99.8,463.5213317871094 +99.81,463.2042236328125 +99.82,462.8964538574219 +99.83,462.6053771972656 +99.84,462.31964111328125 +99.85,462.0391845703125 +99.86,461.76397705078125 +99.87,461.49395751953125 +99.88,461.225341796875 +99.89,460.9543762207031 +99.9,460.65679931640625 +99.91,460.3459167480469 +99.92,460.0368957519531 +99.93,459.72222900390625 +99.94,459.4019775390625 +99.95,459.0724792480469 +99.96,458.7300720214844 +99.97,458.39361572265625 +99.98,458.0481262207031 +99.99,457.70489501953125 +100,457.37139892578125 +100.01,457.0400695800781 +100.02,456.7146301269531 +100.03,456.3931884765625 +100.04,456.0775451660156 +100.05,455.76763916015625 +100.06,455.46905517578125 +100.07,455.1797790527344 +100.08,454.8960266113281 +100.09,454.6177062988281 +100.1,454.3447570800781 +100.11,454.0771789550781 +100.12,453.8186340332031 +100.13,453.5652770996094 +100.14,453.3282775878906 +100.15,453.10003662109375 +100.16,452.8766784667969 +100.17,452.65814208984375 +100.18,452.44622802734375 +100.19,452.2390441894531 +100.2,452.05517578125 +100.21,451.8851013183594 +100.22,451.72119140625 +100.23,451.5670471191406 +100.24,451.4356384277344 +100.25,451.30810546875 +100.26,451.184326171875 +100.27,451.0643005371094 +100.28,450.94793701171875 +100.29,450.8333435058594 +100.3,450.6868591308594 +100.31,450.53680419921875 +100.32,450.3738708496094 +100.33,450.1645202636719 +100.34,449.9186096191406 +100.35,449.56927490234375 +100.36,449.2240905761719 +100.37,448.8363037109375 +100.38,448.4269104003906 +100.39,448.0129699707031 +100.4,447.6057434082031 +100.41,447.1865234375 +100.42,446.7685241699219 +100.43,446.3572998046875 +100.44,445.9528503417969 +100.45,445.55511474609375 +100.46,445.17523193359375 +100.47,444.81488037109375 +100.48,444.5168151855469 +100.49,444.2449951171875 +100.5,443.97857666015625 +100.51,443.7212219238281 +100.52,443.48406982421875 +100.53,443.251953125 +100.54,443.017333984375 +100.55,442.7951965332031 +100.56,442.57977294921875 +100.57,442.3673095703125 +100.58,442.15216064453125 +100.59,441.9418029785156 +100.6,441.7361755371094 +100.61,441.5352478027344 +100.62,441.3407897949219 +100.63,441.15087890625 +100.64,440.9654846191406 +100.65,440.7845458984375 +100.66,440.6173095703125 +100.67,440.4618225097656 +100.68,440.3310241699219 +100.69,440.2040710449219 +100.7,440.082763671875 +100.71,439.9988098144531 +100.72,439.9368591308594 +100.73,439.89111328125 +100.74,439.8501281738281 +100.75,439.8194580078125 +100.76,439.7914733886719 +100.77,439.77734375 +100.78,439.76568603515625 +100.79,439.7621154785156 +100.8,439.7608947753906 +100.81,439.75634765625 +100.82,439.75970458984375 +100.83,439.7558898925781 +100.84,439.7450256347656 +100.85,439.7364501953125 +100.86,439.7226257324219 +100.87,439.7054748535156 +100.88,439.6888122558594 +100.89,439.6744079589844 +100.9,439.6640625 +100.91,439.654052734375 +100.92,439.64617919921875 +100.93,439.6404113769531 +100.94,439.6366882324219 +100.95,439.6275329589844 +100.96,439.53448486328125 +100.97,439.43878173828125 +100.98,439.3421936035156 +100.99,439.2410888671875 +101,439.1429748535156 +101.01,439.0477600097656 +101.02,438.9554138183594 +101.03,438.87335205078125 +101.04,438.79400634765625 +101.05,438.7099304199219 +101.06,438.6285400390625 +101.07,438.5442199707031 +101.08,438.4383544921875 +101.09,438.2999267578125 +101.1,438.15728759765625 +101.11,437.988037109375 +101.12,437.8037414550781 +101.13,437.6156921386719 +101.14,437.42572021484375 +101.15,437.230224609375 +101.16,437.0329895019531 +101.17,436.8302307128906 +101.18,436.6202087402344 +101.19,436.3936767578125 +101.2,436.1712951660156 +101.21,435.9530334472656 +101.22,435.7388610839844 +101.23,435.52874755859375 +101.24,435.3300476074219 +101.25,435.1483459472656 +101.26,434.9703674316406 +101.27,434.79791259765625 +101.28,434.62908935546875 +101.29,434.478759765625 +101.3,434.3318176269531 +101.31,434.1900939941406 +101.32,434.08154296875 +101.33,433.9759521484375 +101.34,433.8956298828125 +101.35,433.82354736328125 +101.36,433.76708984375 +101.37,433.7260437011719 +101.38,433.68719482421875 +101.39,433.6505126953125 +101.4,433.615966796875 +101.41,433.58349609375 +101.42,433.5531005859375 +101.43,433.51165771484375 +101.44,433.47235107421875 +101.45,433.4239196777344 +101.46,433.3776550292969 +101.47,433.3241882324219 +101.48,433.24493408203125 +101.49,433.15692138671875 +101.5,433.0434265136719 +101.51,432.9271545410156 +101.52,432.79876708984375 +101.53,432.6695556640625 +101.54,432.53021240234375 +101.55,432.36968994140625 +101.56,432.2030944824219 +101.57,432.019287109375 +101.58,431.8315124511719 +101.59,431.6156005859375 +101.6,431.3774108886719 +101.61,431.1339416503906 +101.62,430.8611145019531 +101.63,430.55169677734375 +101.64,430.24151611328125 +101.65,429.9288024902344 +101.66,429.61907958984375 +101.67,429.310546875 +101.68,429.0032043457031 +101.69,428.69512939453125 +101.7,428.3882141113281 +101.71,428.076904296875 +101.72,427.7388916015625 +101.73,427.4043273925781 +101.74,427.0694274902344 +101.75,426.736083984375 +101.76,426.398681640625 +101.77,426.0647277832031 +101.78,425.7286682128906 +101.79,425.39794921875 +101.8,425.0799560546875 +101.81,424.76715087890625 +101.82,424.470703125 +101.83,424.17926025390625 +101.84,423.8946228027344 +101.85,423.6148681640625 +101.86,423.3399658203125 +101.87,423.0736083984375 +101.88,422.8082580566406 +101.89,422.5513916015625 +101.9,422.29541015625 +101.91,422.0366516113281 +101.92,421.7788391113281 +101.93,421.5257263183594 +101.94,421.2772521972656 +101.95,421.0613098144531 +101.96,420.8496398925781 +101.97,420.6589660644531 +101.98,420.4815979003906 +101.99,420.32672119140625 +102,420.1922607421875 +102.01,420.07611083984375 +102.02,419.9911193847656 +102.03,419.9239501953125 +102.04,419.8594665527344 +102.05,419.8106994628906 +102.06,419.764404296875 +102.07,419.7242431640625 +102.08,419.6976013183594 +102.09,419.6620178222656 +102.1,419.6286926269531 +102.11,419.59759521484375 +102.12,419.5686950683594 +102.13,419.54754638671875 +102.14,419.5284423828125 +102.15,419.5113525390625 +102.16,419.4962463378906 +102.17,419.48309326171875 +102.18,419.4811706542969 +102.19,419.4959716796875 +102.2,419.5123291015625 +102.21,419.5302429199219 +102.22,419.5403137207031 +102.23,419.55194091796875 +102.24,419.56512451171875 +102.25,419.5164489746094 +102.26,419.438232421875 +102.27,419.3624267578125 +102.28,419.2740783691406 +102.29,419.1864013671875 +102.3,419.09375 +102.31,419.00360107421875 +102.32,418.9159851074219 +102.33,418.8159484863281 +102.34,418.6998596191406 +102.35,418.5790710449219 +102.36,418.4610900878906 +102.37,418.3458557128906 +102.38,418.2408447265625 +102.39,418.1422119140625 +102.4,418.0479736328125 +102.41,417.95623779296875 +102.42,417.8688049316406 +102.43,417.7838134765625 +102.44,417.7012023925781 +102.45,417.6209411621094 +102.46,417.5393371582031 +102.47,417.447021484375 +102.48,417.34222412109375 +102.49,417.2269592285156 +102.5,417.0826721191406 +102.51,416.9357604980469 +102.52,416.77691650390625 +102.53,416.6156005859375 +102.54,416.4425354003906 +102.55,416.2578430175781 +102.56,416.0765686035156 +102.57,415.9023742675781 +102.58,415.7314453125 +102.59,415.56378173828125 +102.6,415.4104919433594 +102.61,415.2602844238281 +102.62,415.1727600097656 +102.63,415.0876159667969 +102.64,415.0104064941406 +102.65,414.9299011230469 +102.66,414.8517150878906 +102.67,414.7702331542969 +102.68,414.6910400390625 +102.69,414.6141052246094 +102.7,414.37933349609375 +102.71,414.1484069824219 +102.72,413.8952331542969 +102.73,413.64056396484375 +102.74,413.3862609863281 +102.75,413.1360778808594 +102.76,412.8639221191406 +102.77,412.5960998535156 +102.78,412.3325500488281 +102.79,412.0434875488281 +102.8,411.7589416503906 +102.81,411.482666015625 +102.82,411.2070617675781 +102.83,410.93963623046875 +102.84,410.667236328125 +102.85,410.4085998535156 +102.86,410.1449279785156 +102.87,409.8856201171875 +102.88,409.6306457519531 +102.89,409.3743896484375 +102.9,409.09454345703125 +102.91,408.8192443847656 +102.92,408.5447692871094 +102.93,408.2748107910156 +102.94,408.0037841796875 +102.95,407.722412109375 +102.96,407.44195556640625 +102.97,407.1661376953125 +102.98,406.88934326171875 +102.99,406.6152648925781 +103,406.3457946777344 +103.01,406.0827941894531 +103.02,405.82989501953125 +103.03,405.5813903808594 +103.04,405.3372802734375 +103.05,405.1402587890625 +103.06,404.9471435546875 +103.07,404.7652587890625 +103.08,404.5870666503906 +103.09,404.41070556640625 +103.1,404.23797607421875 +103.11,404.06884765625 +103.12,403.9033203125 +103.13,403.7413330078125 +103.14,403.58099365234375 +103.15,403.42413330078125 +103.16,403.250244140625 +103.17,403.0613708496094 +103.18,402.8762512207031 +103.19,402.6948547363281 +103.2,402.51715087890625 +103.21,402.3431091308594 +103.22,402.15594482421875 +103.23,401.9892883300781 +103.24,401.8354797363281 +103.25,401.68505859375 +103.26,401.5435791015625 +103.27,401.4183654785156 +103.28,401.2925720214844 +103.29,401.1977844238281 +103.3,401.077880859375 +103.31,400.96099853515625 +103.32,400.8340759277344 +103.33,400.710205078125 +103.34,400.6024475097656 +103.35,400.4900817871094 +103.36,400.3806457519531 +103.37,400.2740783691406 +103.38,400.164794921875 +103.39,400.0583801269531 +103.4,399.95477294921875 +103.41,399.8093566894531 +103.42,399.66534423828125 +103.43,399.4928894042969 +103.44,399.303466796875 +103.45,399.08984375 +103.46,398.8801574707031 +103.47,398.6613464355469 +103.48,398.446533203125 +103.49,398.2356872558594 +103.5,398.02874755859375 +103.51,397.83868408203125 +103.52,397.70623779296875 +103.53,397.576904296875 +103.54,397.4562072753906 +103.55,397.3385009765625 +103.56,397.2237548828125 +103.57,397.1063537597656 +103.58,396.9546813964844 +103.59,396.77838134765625 +103.6,396.5888977050781 +103.61,396.4031066894531 +103.62,396.220947265625 +103.63,396.0367736816406 +103.64,395.8544006347656 +103.65,395.64776611328125 +103.66,395.4319763183594 +103.67,395.2090148925781 +103.68,394.9621887207031 +103.69,394.70855712890625 +103.7,394.4592590332031 +103.71,394.21429443359375 +103.72,393.9513244628906 +103.73,393.69287109375 +103.74,393.43701171875 +103.75,393.1818542480469 +103.76,392.9181213378906 +103.77,392.6571044921875 +103.78,392.380126953125 +103.79,392.10595703125 +103.8,391.83465576171875 +103.81,391.55682373046875 +103.82,391.2707214355469 +103.83,390.97271728515625 +103.84,390.6536560058594 +103.85,390.33978271484375 +103.86,390.0347900390625 +103.87,389.73114013671875 +103.88,389.4325256347656 +103.89,389.13897705078125 +103.9,388.8503723144531 +103.91,388.56671142578125 +103.92,388.29168701171875 +103.93,388.0215148925781 +103.94,387.76165771484375 +103.95,387.495361328125 +103.96,387.2337951660156 +103.97,386.9379577636719 +103.98,386.6434631347656 +103.99,386.3540344238281 +104,386.06964111328125 +104.01,385.7901916503906 +104.02,385.5194396972656 +104.03,385.2535400390625 +104.04,385.0240478515625 +104.05,384.8175354003906 +104.06,384.6170959472656 +104.07,384.4393615722656 +104.08,384.26556396484375 +104.09,384.0956115722656 +104.1,383.9276123046875 +104.11,383.7633972167969 +104.12,383.6029357910156 +104.13,383.4071960449219 +104.14,383.2137451171875 +104.15,383.0224914550781 +104.16,382.8352355957031 +104.17,382.65380859375 +104.18,382.4781494140625 +104.19,382.3063659667969 +104.2,382.1532897949219 +104.21,382.0409851074219 +104.22,381.9318542480469 +104.23,381.8258972167969 +104.24,381.7230224609375 +104.25,381.5953674316406 +104.26,381.4617614746094 +104.27,381.2739562988281 +104.28,381.0789489746094 +104.29,380.8582763671875 +104.3,380.641845703125 +104.31,380.4184875488281 +104.32,380.1957702636719 +104.33,379.9661865234375 +104.34,379.7298889160156 +104.35,379.492431640625 +104.36,379.2371520996094 +104.37,378.96240234375 +104.38,378.67767333984375 +104.39,378.37750244140625 +104.4,378.0769348144531 +104.41,377.77593994140625 +104.42,377.46893310546875 +104.43,377.1634826660156 +104.44,376.85028076171875 +104.45,376.4793701171875 +104.46,376.1107177734375 +104.47,375.7460632324219 +104.48,375.36138916015625 +104.49,374.9643249511719 +104.5,374.56982421875 +104.51,374.1797180175781 +104.52,373.7865905761719 +104.53,373.39605712890625 +104.54,372.9951477050781 +104.55,372.5968933105469 +104.56,372.20501708984375 +104.57,371.791748046875 +104.58,371.37396240234375 +104.59,370.95166015625 +104.6,370.4897766113281 +104.61,370.0257568359375 +104.62,369.5596923828125 +104.63,369.0804748535156 +104.64,368.5956726074219 +104.65,368.1128234863281 +104.66,367.6208190917969 +104.67,367.108642578125 +104.68,366.6006164550781 +104.69,366.093017578125 +104.7,365.571044921875 +104.71,365.0570983886719 +104.72,364.5381774902344 +104.73,364.02728271484375 +104.74,363.5244140625 +104.75,363.0294494628906 +104.76,362.5423583984375 +104.77,362.0630798339844 +104.78,361.6026611328125 +104.79,361.1553649902344 +104.8,360.72479248046875 +104.81,360.3089294433594 +104.82,359.9002380371094 +104.83,359.4986572265625 +104.84,359.1041564941406 +104.85,358.7203063964844 +104.86,358.3396911621094 +104.87,357.9640808105469 +104.88,357.587890625 +104.89,357.2185363769531 +104.9,356.8448791503906 +104.91,356.4780578613281 +104.92,356.1180114746094 +104.93,355.7591552734375 +104.94,355.406982421875 +104.95,355.06146240234375 +104.96,354.7225036621094 +104.97,354.3734130859375 +104.98,354.04571533203125 +104.99,353.72442626953125 +105,353.4150695800781 +105.01,353.1119079589844 +105.02,352.8149108886719 +105.03,352.5240173339844 +105.04,352.2391662597656 +105.05,351.9547119140625 +105.06,351.6817932128906 +105.07,351.41473388671875 +105.08,351.1534423828125 +105.09,350.9071044921875 +105.1,350.6663818359375 +105.11,350.418212890625 +105.12,350.17559814453125 +105.13,349.93658447265625 +105.14,349.7049255371094 +105.15,349.4786682128906 +105.16,349.2577209472656 +105.17,349.04937744140625 +105.18,348.8461608886719 +105.19,348.6479797363281 +105.2,348.454833984375 +105.21,348.2666015625 +105.22,348.08880615234375 +105.23,347.9250183105469 +105.24,347.7658386230469 +105.25,347.6112060546875 +105.26,347.48138427734375 +105.27,347.4094543457031 +105.28,347.3485107421875 +105.29,347.2910461425781 +105.3,347.2369689941406 +105.31,347.1862487792969 +105.32,347.1480712890625 +105.33,347.11114501953125 +105.34,347.07733154296875 +105.35,347.03912353515625 +105.36,346.9891357421875 +105.37,346.92938232421875 +105.38,346.86358642578125 +105.39,346.7881164550781 +105.4,346.701171875 +105.41,346.6084289550781 +105.42,346.517333984375 +105.43,346.426025390625 +105.44,346.3381652832031 +105.45,346.2536926269531 +105.46,346.1725769042969 +105.47,346.0947570800781 +105.48,346.02203369140625 +105.49,345.9543151855469 +105.5,345.9045104980469 +105.51,345.8650207519531 +105.52,345.8468017578125 +105.53,345.8329772949219 +105.54,345.8216247558594 +105.55,345.8127136230469 +105.56,345.8061828613281 +105.57,345.8019714355469 +105.58,345.77777099609375 +105.59,345.7375183105469 +105.6,345.69805908203125 +105.61,345.64263916015625 +105.62,345.5899353027344 +105.63,345.48443603515625 +105.64,345.38214111328125 +105.65,345.2756042480469 +105.66,345.1649169921875 +105.67,345.0334167480469 +105.68,344.888671875 +105.69,344.7400817871094 +105.7,344.54150390625 +105.71,344.3321838378906 +105.72,344.0661315917969 +105.73,343.7734375 +105.74,343.43414306640625 +105.75,343.0966796875 +105.76,342.7186279296875 +105.77,342.315185546875 +105.78,341.8884582519531 +105.79,341.43505859375 +105.8,340.9811706542969 +105.81,340.5341491699219 +105.82,340.093994140625 +105.83,339.6606140136719 +105.84,339.2339782714844 +105.85,338.84912109375 +105.86,338.5001220703125 +105.87,338.1810302734375 +105.88,337.8823547363281 +105.89,337.6039123535156 +105.9,337.38427734375 +105.91,337.1729431152344 +105.92,336.9790954589844 +105.93,336.81549072265625 +105.94,336.663330078125 +105.95,336.5224609375 +105.96,336.396484375 +105.97,336.2741394042969 +105.98,336.1553649902344 +105.99,336.04754638671875 +106,335.9431457519531 +106.01,335.8291320800781 +106.02,335.7129821777344 +106.03,335.60028076171875 +106.04,335.4909973144531 +106.05,335.3610534667969 +106.06,335.23468017578125 +106.07,335.1081237792969 +106.08,334.9591979980469 +106.09,334.8103332519531 +106.1,334.6448974609375 +106.11,334.47222900390625 +106.12,334.2979431152344 +106.13,334.12396240234375 +106.14,333.95025634765625 +106.15,333.76385498046875 +106.16,333.57598876953125 +106.17,333.3663635253906 +106.18,333.1554870605469 +106.19,332.9397277832031 +106.2,332.7191162109375 +106.21,332.5029296875 +106.22,332.2856140136719 +106.23,332.07269287109375 +106.24,331.8641357421875 +106.25,331.6598815917969 +106.26,331.45989990234375 +106.27,331.2622985839844 +106.28,331.0688781738281 +106.29,330.88330078125 +106.3,330.6980895996094 +106.31,330.5058288574219 +106.32,330.3177185058594 +106.33,330.1300048828125 +106.34,329.94451904296875 +106.35,329.7630920410156 +106.36,329.5875244140625 +106.37,329.4158935546875 +106.38,329.2445068359375 +106.39,329.07696533203125 +106.4,328.9095458984375 +106.41,328.7386169433594 +106.42,328.57159423828125 +106.43,328.4157409667969 +106.44,328.26361083984375 +106.45,328.1151428222656 +106.46,327.9869384765625 +106.47,327.8935241699219 +106.48,327.806884765625 +106.49,327.7398376464844 +106.5,327.68658447265625 +106.51,327.6248474121094 +106.52,327.5768127441406 +106.53,327.5312805175781 +106.54,327.491943359375 +106.55,327.4642028808594 +106.56,327.44427490234375 +106.57,327.433837890625 +106.58,327.432861328125 +106.59,327.4338073730469 +106.6,327.4366455078125 +106.61,327.43572998046875 +106.62,327.4348449707031 +106.63,327.4357604980469 +106.64,327.4384765625 +106.65,327.4411315917969 +106.66,327.44000244140625 +106.67,327.43878173828125 +106.68,327.4393310546875 +106.69,327.43231201171875 +106.7,327.42706298828125 +106.71,327.4124450683594 +106.72,327.3830261230469 +106.73,327.3315734863281 +106.74,327.278564453125 +106.75,327.2240295410156 +106.76,327.17169189453125 +106.77,327.1085205078125 +106.78,327.0291442871094 +106.79,326.9466552734375 +106.8,326.86474609375 +106.81,326.78155517578125 +106.82,326.6989440917969 +106.83,326.6039733886719 +106.84,326.5115051269531 +106.85,326.41595458984375 +106.86,326.3432922363281 +106.87,326.27288818359375 +106.88,326.2047424316406 +106.89,326.1387939453125 +106.9,326.084228515625 +106.91,326.035400390625 +106.92,325.99041748046875 +106.93,325.9750671386719 +106.94,325.9706115722656 +106.95,325.9676513671875 +106.96,325.9661560058594 +106.97,325.96978759765625 +106.98,325.97845458984375 +106.99,325.9847412109375 +107,325.9923095703125 +107.01,325.99749755859375 +107.02,326.00213623046875 +107.03,325.998779296875 +107.04,325.9893798828125 +107.05,325.9666442871094 +107.06,325.92694091796875 +107.07,325.88519287109375 +107.08,325.8304443359375 +107.09,325.7756042480469 +107.1,325.7152404785156 +107.11,325.65673828125 +107.12,325.6000671386719 +107.13,325.53411865234375 +107.14,325.45721435546875 +107.15,325.3582763671875 +107.16,325.2597351074219 +107.17,325.15423583984375 +107.18,325.0362548828125 +107.19,324.87457275390625 +107.2,324.7047424316406 +107.21,324.52862548828125 +107.22,324.3426513671875 +107.23,324.1468811035156 +107.24,323.9359130859375 +107.25,323.6656799316406 +107.26,323.3865966796875 +107.27,323.0968933105469 +107.28,322.8077697753906 +107.29,322.4916076660156 +107.3,322.1449890136719 +107.31,321.77935791015625 +107.32,321.3912048339844 +107.33,321.0066223144531 +107.34,320.61822509765625 +107.35,320.1836853027344 +107.36,319.74957275390625 +107.37,319.3214416503906 +107.38,318.8974304199219 +107.39,318.4793701171875 +107.4,318.0579833984375 +107.41,317.6425476074219 +107.42,317.2330627441406 +107.43,316.8294982910156 +107.44,316.4372863769531 +107.45,316.0545349121094 +107.46,315.6737976074219 +107.47,315.2950744628906 +107.48,314.92572021484375 +107.49,314.57489013671875 +107.5,314.24053955078125 +107.51,313.9207458496094 +107.52,313.6061096191406 +107.53,313.3076477050781 +107.54,313.0159912109375 +107.55,312.753173828125 +107.56,312.4949951171875 +107.57,312.24139404296875 +107.58,312.01263427734375 +107.59,311.7881774902344 +107.6,311.573486328125 +107.61,311.3629455566406 +107.62,311.1565246582031 +107.63,310.95416259765625 +107.64,310.755859375 +107.65,310.5670471191406 +107.66,310.38214111328125 +107.67,310.2139587402344 +107.68,310.05499267578125 +107.69,309.9014587402344 +107.7,309.75146484375 +107.71,309.6031188964844 +107.72,309.4600524902344 +107.73,309.31854248046875 +107.74,309.1785888671875 +107.75,309.0419921875 +107.76,308.8940124511719 +107.77,308.7475891113281 +107.78,308.59722900390625 +107.79,308.439208984375 +107.8,308.28289794921875 +107.81,308.12823486328125 +107.82,307.9623107910156 +107.83,307.7705383300781 +107.84,307.5697021484375 +107.85,307.3544006347656 +107.86,307.10272216796875 +107.87,306.8444519042969 +107.88,306.5907287597656 +107.89,306.29736328125 +107.9,305.9905090332031 +107.91,305.66851806640625 +107.92,305.3388977050781 +107.93,304.970458984375 +107.94,304.5912170410156 +107.95,304.1663513183594 +107.96,303.73870849609375 +107.97,303.2641296386719 +107.98,302.75421142578125 +107.99,302.25164794921875 +108,301.7232971191406 +108.01,301.1970520019531 +108.02,300.6766052246094 +108.03,300.1637268066406 +108.04,299.65838623046875 +108.05,299.1623840332031 +108.06,298.6737976074219 +108.07,298.2182922363281 +108.08,297.8526306152344 +108.09,297.5170593261719 +108.1,297.2130432128906 +108.11,296.93115234375 +108.12,296.70428466796875 +108.13,296.49505615234375 +108.14,296.32904052734375 +108.15,296.1671447753906 +108.16,296.0167236328125 +108.17,295.8904724121094 +108.18,295.8047180175781 +108.19,295.73699951171875 +108.2,295.6833801269531 +108.21,295.6344909667969 +108.22,295.5957946777344 +108.23,295.6094970703125 +108.24,295.6253356933594 +108.25,295.6598815917969 +108.26,295.6963195800781 +108.27,295.71795654296875 +108.28,295.71575927734375 +108.29,295.69915771484375 +108.3,295.6848449707031 +108.31,295.6212158203125 +108.32,295.52166748046875 +108.33,295.42340087890625 +108.34,295.32818603515625 +108.35,295.23602294921875 +108.36,295.1468505859375 +108.37,295.05694580078125 +108.38,294.9442138671875 +108.39,294.83465576171875 +108.4,294.7264099121094 +108.41,294.6175537109375 +108.42,294.493408203125 +108.43,294.35040283203125 +108.44,294.20166015625 +108.45,294.0527038574219 +108.46,293.9072570800781 +108.47,293.7560729980469 +108.48,293.6065673828125 +108.49,293.4623718261719 +108.5,293.32159423828125 +108.51,293.1842041015625 +108.52,293.08880615234375 +108.53,293 +108.54,292.9434509277344 +108.55,292.8599548339844 +108.56,292.7792053222656 +108.57,292.701171875 +108.58,292.6221008300781 +108.59,292.52734375 +108.6,292.420654296875 +108.61,292.24884033203125 +108.62,292.0696105957031 +108.63,291.85906982421875 +108.64,291.5495300292969 +108.65,291.2377014160156 +108.66,290.9125671386719 +108.67,290.57977294921875 +108.68,290.23211669921875 +108.69,289.8659973144531 +108.7,289.4890441894531 +108.71,289.0719909667969 +108.72,288.6318054199219 +108.73,288.1778869628906 +108.74,287.7306823730469 +108.75,287.29010009765625 +108.76,286.8542785644531 +108.77,286.425048828125 +108.78,286.0041809082031 +108.79,285.5934753417969 +108.8,285.235107421875 +108.81,284.88629150390625 +108.82,284.5487060546875 +108.83,284.22418212890625 +108.84,283.9235534667969 +108.85,283.6300964355469 +108.86,283.34375 +108.87,283.07177734375 +108.88,282.826904296875 +108.89,282.5868225097656 +108.9,282.3587951660156 +108.91,282.1372375488281 +108.92,281.9201965332031 +108.93,281.7297058105469 +108.94,281.5434265136719 +108.95,281.361328125 +108.96,281.183349609375 +108.97,280.98553466796875 +108.98,280.7920227050781 +108.99,280.6174621582031 +109,280.42852783203125 +109.01,280.2419128417969 +109.02,280.0502624511719 +109.03,279.8554992675781 +109.04,279.6612854003906 +109.05,279.4749755859375 +109.06,279.29278564453125 +109.07,279.11468505859375 +109.08,278.94061279296875 +109.09,278.7705383300781 +109.1,278.6153869628906 +109.11,278.4659118652344 +109.12,278.329345703125 +109.13,278.2000427246094 +109.14,278.1054992675781 +109.15,278.02880859375 +109.16,277.9605407714844 +109.17,277.9391784667969 +109.18,277.98638916015625 +109.19,278.0517578125 +109.2,278.1240234375 +109.21,278.1976013183594 +109.22,278.2724304199219 +109.23,278.34844970703125 +109.24,278.4201354980469 +109.25,278.4212646484375 +109.26,278.3636474609375 +109.27,278.25518798828125 +109.28,278.10009765625 +109.29,277.9466552734375 +109.3,277.796630859375 +109.31,277.648193359375 +109.32,277.4884033203125 +109.33,277.3321228027344 +109.34,277.17926025390625 +109.35,277.02984619140625 +109.36,276.8985290527344 +109.37,276.7557067871094 +109.38,276.61614990234375 +109.39,276.4798889160156 +109.4,276.34686279296875 +109.41,276.2170104980469 +109.42,276.0885314941406 +109.43,275.9631652832031 +109.44,275.8206481933594 +109.45,275.674072265625 +109.46,275.52532958984375 +109.47,275.3706970214844 +109.48,275.2194519042969 +109.49,275.0715637207031 +109.5,274.9177551269531 +109.51,274.767333984375 +109.52,274.6202392578125 +109.53,274.4709777832031 +109.54,274.3139953613281 +109.55,274.1585693359375 +109.56,274.0065002441406 +109.57,273.83941650390625 +109.58,273.6593322753906 +109.59,273.4791564941406 +109.6,273.2861022949219 +109.61,273.0545654296875 +109.62,272.8235168457031 +109.63,272.5653991699219 +109.64,272.28424072265625 +109.65,271.99676513671875 +109.66,271.7085266113281 +109.67,271.3681945800781 +109.68,271.0130615234375 +109.69,270.65789794921875 +109.7,270.2202453613281 +109.71,269.77801513671875 +109.72,269.3166198730469 +109.73,268.84722900390625 +109.74,268.3351745605469 +109.75,267.83038330078125 +109.76,267.3071594238281 +109.77,266.778564453125 +109.78,266.2392578125 +109.79,265.7076416015625 +109.8,265.18365478515625 +109.81,264.66729736328125 +109.82,264.15850830078125 +109.83,263.6590576171875 +109.84,263.17437744140625 +109.85,262.7024841308594 +109.86,262.25799560546875 +109.87,261.8314514160156 +109.88,261.4135437011719 +109.89,261.0078125 +109.9,260.6289367675781 +109.91,260.28021240234375 +109.92,259.9375305175781 +109.93,259.60089111328125 +109.94,259.27935791015625 +109.95,258.9654541015625 +109.96,258.66461181640625 +109.97,258.369384765625 +109.98,258.08154296875 +109.99,257.7973327636719 +110,257.5185852050781 +110.01,257.25079345703125 +110.02,257.0010986328125 +110.03,256.7730407714844 +110.04,256.54986572265625 +110.05,256.3315124511719 +110.06,256.1179504394531 +110.07,255.9091033935547 +110.08,255.70492553710938 +110.09,255.4998321533203 +110.1,255.2957000732422 +110.11,255.09616088867188 +110.12,254.9011993408203 +110.13,254.7107391357422 +110.14,254.5247344970703 +110.15,254.36517333984375 +110.16,254.20973205566406 +110.17,254.058349609375 +110.18,253.91098022460938 +110.19,253.76759338378906 +110.2,253.6281280517578 +110.21,253.4796905517578 +110.22,253.32237243652344 +110.23,253.16908264160156 +110.24,253.019775390625 +110.25,252.8707275390625 +110.26,252.72560119628906 +110.27,252.58802795410156 +110.28,252.4542236328125 +110.29,252.3296356201172 +110.3,252.20867919921875 +110.31,252.09129333496094 +110.32,251.9737548828125 +110.33,251.8597412109375 +110.34,251.7491912841797 +110.35,251.64207458496094 +110.36,251.538330078125 +110.37,251.42877197265625 +110.38,251.32260131835938 +110.39,251.21791076660156 +110.4,251.10186767578125 +110.41,250.98922729492188 +110.42,250.87449645996094 +110.43,250.76312255859375 +110.44,250.64772033691406 +110.45,250.5485076904297 +110.46,250.45248413085938 +110.47,250.35958862304688 +110.48,250.26800537109375 +110.49,250.16482543945312 +110.5,250.0538330078125 +110.51,249.94786071777344 +110.52,249.84329223632812 +110.53,249.71800231933594 +110.54,249.59060668945312 +110.55,249.44644165039062 +110.56,249.3058319091797 +110.57,249.1668701171875 +110.58,249.007568359375 +110.59,248.85194396972656 +110.6,248.69259643554688 +110.61,248.5369110107422 +110.62,248.38485717773438 +110.63,248.22540283203125 +110.64,248.0531463623047 +110.65,247.87001037597656 +110.66,247.68162536621094 +110.67,247.46237182617188 +110.68,247.2473907470703 +110.69,247.02932739257812 +110.7,246.80999755859375 +110.71,246.58763122558594 +110.72,246.36227416992188 +110.73,246.14125061035156 +110.74,245.9208526611328 +110.75,245.70289611816406 +110.76,245.4580841064453 +110.77,245.18853759765625 +110.78,244.88722229003906 +110.79,244.56907653808594 +110.8,244.22149658203125 +110.81,243.85397338867188 +110.82,243.48501586914062 +110.83,243.0999755859375 +110.84,242.69363403320312 +110.85,242.28262329101562 +110.86,241.87802124023438 +110.87,241.47976684570312 +110.88,241.0878143310547 +110.89,240.70213317871094 +110.9,240.34280395507812 +110.91,239.99488830566406 +110.92,239.66014099121094 +110.93,239.35488891601562 +110.94,239.06060791015625 +110.95,238.7752685546875 +110.96,238.50070190429688 +110.97,238.25320434570312 +110.98,238.01425170898438 +110.99,237.79286193847656 +111,237.5834197998047 +111.01,237.38394165039062 +111.02,237.190673828125 +111.03,237.00901794433594 +111.04,236.84251403808594 +111.05,236.69287109375 +111.06,236.5525360107422 +111.07,236.43238830566406 +111.08,236.33226013183594 +111.09,236.24090576171875 +111.1,236.158203125 +111.11,236.08226013183594 +111.12,236.0093231201172 +111.13,235.93934631347656 +111.14,235.87229919433594 +111.15,235.80810546875 +111.16,235.74673461914062 +111.17,235.6881561279297 +111.18,235.6048583984375 +111.19,235.49708557128906 +111.2,235.39068603515625 +111.21,235.28016662597656 +111.22,235.17286682128906 +111.23,235.05592346191406 +111.24,234.93309020996094 +111.25,234.80259704589844 +111.26,234.6754913330078 +111.27,234.55174255371094 +111.28,234.42213439941406 +111.29,234.29405212402344 +111.3,234.171142578125 +111.31,234.05149841308594 +111.32,233.93325805664062 +111.33,233.81822204589844 +111.34,233.70635986328125 +111.35,233.59400939941406 +111.36,233.48294067382812 +111.37,233.3182373046875 +111.38,233.13156127929688 +111.39,232.9286651611328 +111.4,232.65853881835938 +111.41,232.39129638671875 +111.42,232.10316467285156 +111.43,231.776123046875 +111.44,231.4014434814453 +111.45,231.02346801757812 +111.46,230.60755920410156 +111.47,230.1925048828125 +111.48,229.78378295898438 +111.49,229.38136291503906 +111.5,228.98519897460938 +111.51,228.5989227294922 +111.52,228.22055053710938 +111.53,227.8683319091797 +111.54,227.5237579345703 +111.55,227.186767578125 +111.56,226.8572998046875 +111.57,226.61199951171875 +111.58,226.38238525390625 +111.59,226.15919494628906 +111.6,225.94967651367188 +111.61,225.75003051757812 +111.62,225.5948944091797 +111.63,225.51309204101562 +111.64,225.441650390625 +111.65,225.38775634765625 +111.66,225.3457489013672 +111.67,225.30633544921875 +111.68,225.29876708984375 +111.69,225.3007049560547 +111.7,225.3120574951172 +111.71,225.32720947265625 +111.72,225.34609985351562 +111.73,225.36862182617188 +111.74,225.39292907714844 +111.75,225.42449951171875 +111.76,225.4631805419922 +111.77,225.50340270996094 +111.78,225.5506134033203 +111.79,225.59922790527344 +111.8,225.64920043945312 +111.81,225.67306518554688 +111.82,225.69671630859375 +111.83,225.69815063476562 +111.84,225.69583129882812 +111.85,225.68069458007812 +111.86,225.66744995117188 +111.87,225.65423583984375 +111.88,225.6446990966797 +111.89,225.63511657714844 +111.9,225.6273193359375 +111.91,225.6212615966797 +111.92,225.61691284179688 +111.93,225.61424255371094 +111.94,225.6132049560547 +111.95,225.61378479003906 +111.96,225.61595153808594 +111.97,225.61781311035156 +111.98,225.59744262695312 +111.99,225.5587158203125 +112,225.5090789794922 +112.01,225.44869995117188 +112.02,225.38128662109375 +112.03,225.314208984375 +112.04,225.2346954345703 +112.05,225.15016174316406 +112.06,225.05514526367188 +112.07,224.93148803710938 +112.08,224.7904815673828 +112.09,224.65237426757812 +112.1,224.51715087890625 +112.11,224.37930297851562 +112.12,224.21871948242188 +112.13,224.02655029296875 +112.14,223.8323516845703 +112.15,223.63613891601562 +112.16,223.40504455566406 +112.17,223.16319274902344 +112.18,222.92347717285156 +112.19,222.67132568359375 +112.2,222.42144775390625 +112.21,222.16656494140625 +112.22,221.91213989257812 +112.23,221.63633728027344 +112.24,221.33023071289062 +112.25,221.02699279785156 +112.26,220.72120666503906 +112.27,220.41648864746094 +112.28,220.10011291503906 +112.29,219.75755310058594 +112.3,219.3909912109375 +112.31,219.00070190429688 +112.32,218.59967041015625 +112.33,218.2026824951172 +112.34,217.80606079101562 +112.35,217.40249633789062 +112.36,216.99395751953125 +112.37,216.582275390625 +112.38,216.1766815185547 +112.39,215.74978637695312 +112.4,215.32186889648438 +112.41,214.89663696289062 +112.42,214.4777069091797 +112.43,214.05960083007812 +112.44,213.6477813720703 +112.45,213.24220275878906 +112.46,212.8428192138672 +112.47,212.44960021972656 +112.48,212.0697784423828 +112.49,211.69595336914062 +112.5,211.33360290527344 +112.51,210.97889709472656 +112.52,210.64093017578125 +112.53,210.32684326171875 +112.54,210.04368591308594 +112.55,209.78204345703125 +112.56,209.52528381347656 +112.57,209.27880859375 +112.58,209.04800415039062 +112.59,208.88565063476562 +112.6,208.73631286621094 +112.61,208.59254455566406 +112.62,208.4524383544922 +112.63,208.31593322753906 +112.64,208.18116760253906 +112.65,208.05355834960938 +112.66,207.93125915527344 +112.67,207.81236267089844 +112.68,207.70228576660156 +112.69,207.58999633789062 +112.7,207.48643493652344 +112.71,207.38787841796875 +112.72,207.2924346923828 +112.73,207.20004272460938 +112.74,207.10882568359375 +112.75,206.99688720703125 +112.76,206.88446044921875 +112.77,206.7752227783203 +112.78,206.66912841796875 +112.79,206.56614685058594 +112.8,206.46444702148438 +112.81,206.33839416503906 +112.82,206.2101593017578 +112.83,206.08522033691406 +112.84,205.96353149414062 +112.85,205.84507751464844 +112.86,205.72616577148438 +112.87,205.59764099121094 +112.88,205.47238159179688 +112.89,205.34120178222656 +112.9,205.2133026123047 +112.91,205.07769775390625 +112.92,204.9563446044922 +112.93,204.85455322265625 +112.94,204.72837829589844 +112.95,204.63095092773438 +112.96,204.53640747070312 +112.97,204.43740844726562 +112.98,204.34129333496094 +112.99,204.24256896972656 +113,204.14669799804688 +113.01,204.04635620117188 +113.02,203.94525146484375 +113.03,203.8470001220703 +113.04,203.73696899414062 +113.05,203.61892700195312 +113.06,203.48568725585938 +113.07,203.3227996826172 +113.08,203.15969848632812 +113.09,202.99459838867188 +113.1,202.82936096191406 +113.11,202.66213989257812 +113.12,202.49842834472656 +113.13,202.33819580078125 +113.14,202.15953063964844 +113.15,201.97171020507812 +113.16,201.7729949951172 +113.17,201.57080078125 +113.18,201.36154174804688 +113.19,201.13983154296875 +113.2,200.92042541503906 +113.21,200.69961547851562 +113.22,200.479248046875 +113.23,200.26295471191406 +113.24,200.0488739013672 +113.25,199.82241821289062 +113.26,199.5982666015625 +113.27,199.35638427734375 +113.28,199.10972595214844 +113.29,198.84373474121094 +113.3,198.56231689453125 +113.31,198.28201293945312 +113.32,198.00279235839844 +113.33,197.71560668945312 +113.34,197.42779541015625 +113.35,197.11935424804688 +113.36,196.80691528320312 +113.37,196.49961853027344 +113.38,196.19741821289062 +113.39,195.8984375 +113.4,195.60450744628906 +113.41,195.31739807128906 +113.42,195.04248046875 +113.43,194.77239990234375 +113.44,194.50709533691406 +113.45,194.2483673095703 +113.46,193.9924774169922 +113.47,193.74124145507812 +113.48,193.49461364746094 +113.49,193.25619506835938 +113.5,193.0222625732422 +113.51,192.79824829101562 +113.52,192.58042907714844 +113.53,192.42156982421875 +113.54,192.2845916748047 +113.55,192.1583709716797 +113.56,192.0445556640625 +113.57,191.97952270507812 +113.58,191.92442321777344 +113.59,191.9229278564453 +113.6,191.92344665527344 +113.61,191.93505859375 +113.62,191.95211791992188 +113.63,191.9782257080078 +113.64,192.00779724121094 +113.65,192.04440307617188 +113.66,192.0824737548828 +113.67,192.12197875976562 +113.68,192.1628875732422 +113.69,192.20693969726562 +113.7,192.25228881835938 +113.71,192.2989044189453 +113.72,192.3467559814453 +113.73,192.36483764648438 +113.74,192.3843994140625 +113.75,192.39988708496094 +113.76,192.411376953125 +113.77,192.4243621826172 +113.78,192.42971801757812 +113.79,192.4256591796875 +113.8,192.417724609375 +113.81,192.40232849121094 +113.82,192.37583923339844 +113.83,192.342041015625 +113.84,192.28456115722656 +113.85,192.22735595703125 +113.86,192.1448974609375 +113.87,192.06475830078125 +113.88,191.98507690429688 +113.89,191.87307739257812 +113.9,191.71632385253906 +113.91,191.5553436279297 +113.92,191.3956756591797 +113.93,191.22996520996094 +113.94,191.0601806640625 +113.95,190.87904357910156 +113.96,190.6920928955078 +113.97,190.46852111816406 +113.98,190.24505615234375 +113.99,190.01080322265625 +114,189.77500915527344 +114.01,189.53587341308594 +114.02,189.29888916015625 +114.03,189.06224060058594 +114.04,188.7949676513672 +114.05,188.47195434570312 +114.06,188.1447296142578 +114.07,187.77696228027344 +114.08,187.40187072753906 +114.09,186.9885711669922 +114.1,186.48301696777344 +114.11,185.92979431152344 +114.12,185.37672424316406 +114.13,184.83111572265625 +114.14,184.29290771484375 +114.15,183.76206970214844 +114.16,183.2385711669922 +114.17,182.74964904785156 +114.18,182.33309936523438 +114.19,181.94284057617188 +114.2,181.56036376953125 +114.21,181.20750427246094 +114.22,180.92758178710938 +114.23,180.67625427246094 +114.24,180.43133544921875 +114.25,180.2419891357422 +114.26,180.06027221679688 +114.27,179.88973999023438 +114.28,179.7266387939453 +114.29,179.5672607421875 +114.3,179.40794372558594 +114.31,179.24505615234375 +114.32,179.08224487304688 +114.33,178.9213104248047 +114.34,178.7640380859375 +114.35,178.5503692626953 +114.36,178.3263702392578 +114.37,178.09759521484375 +114.38,177.81686401367188 +114.39,177.53919982910156 +114.4,177.260986328125 +114.41,176.9640655517578 +114.42,176.65769958496094 +114.43,176.3565673828125 +114.44,175.98974609375 +114.45,175.61968994140625 +114.46,175.2392120361328 +114.47,174.82476806640625 +114.48,174.41311645507812 +114.49,174.00424194335938 +114.5,173.5781707763672 +114.51,173.142333984375 +114.52,172.7041473388672 +114.53,172.2690887451172 +114.54,171.8353271484375 +114.55,171.39382934570312 +114.56,170.95556640625 +114.57,170.52415466308594 +114.58,170.09231567382812 +114.59,169.66729736328125 +114.6,169.24905395507812 +114.61,168.83755493164062 +114.62,168.43637084960938 +114.63,168.04177856445312 +114.64,167.65736389160156 +114.65,167.27940368652344 +114.66,166.9078369140625 +114.67,166.54263305664062 +114.68,166.18008422851562 +114.69,165.8201904296875 +114.7,165.4611053466797 +114.71,165.10829162597656 +114.72,164.7598419189453 +114.73,164.4121551513672 +114.74,164.06703186035156 +114.75,163.7280731201172 +114.76,163.3988494873047 +114.77,163.07565307617188 +114.78,162.7584228515625 +114.79,162.4470977783203 +114.8,162.14163208007812 +114.81,161.84194946289062 +114.82,161.55528259277344 +114.83,161.2760772705078 +114.84,161.0005645751953 +114.85,160.7287139892578 +114.86,160.4623260498047 +114.87,160.21043395996094 +114.88,159.9638214111328 +114.89,159.7260284423828 +114.9,159.49334716796875 +114.91,159.26573181152344 +114.92,159.04310607910156 +114.93,158.825439453125 +114.94,158.61265563964844 +114.95,158.3974609375 +114.96,158.17623901367188 +114.97,157.95994567871094 +114.98,157.74302673339844 +114.99,157.52188110351562 +115,157.302001953125 +115.01,157.08700561523438 +115.02,156.8641815185547 +115.03,156.64627075195312 +115.04,156.39141845703125 +115.05,156.13999938964844 +115.06,155.8883056640625 +115.07,155.63272094726562 +115.08,155.38058471679688 +115.09,155.1263885498047 +115.1,154.86654663085938 +115.11,154.60650634765625 +115.12,154.35174560546875 +115.13,154.09133911132812 +115.14,153.82350158691406 +115.15,153.55014038085938 +115.16,153.265869140625 +115.17,152.98533630371094 +115.18,152.7030487060547 +115.19,152.42630004882812 +115.2,152.1459197998047 +115.21,151.86741638183594 +115.22,151.5817413330078 +115.23,151.29800415039062 +115.24,151.01980590820312 +115.25,150.73800659179688 +115.26,150.45811462402344 +115.27,150.16561889648438 +115.28,149.87335205078125 +115.29,149.5721893310547 +115.3,149.273193359375 +115.31,148.97991943359375 +115.32,148.6904754638672 +115.33,148.3975830078125 +115.34,148.101318359375 +115.35,147.8035125732422 +115.36,147.50782775878906 +115.37,147.1960906982422 +115.38,146.89022827148438 +115.39,146.57748413085938 +115.4,146.27066040039062 +115.41,145.9715118408203 +115.42,145.67630004882812 +115.43,145.38504028320312 +115.44,145.09947204589844 +115.45,144.8213348388672 +115.46,144.5506134033203 +115.47,144.28175354003906 +115.48,144.02200317382812 +115.49,143.7603759765625 +115.5,143.50413513183594 +115.51,143.2532501220703 +115.52,143.02032470703125 +115.53,142.8015899658203 +115.54,142.58779907226562 +115.55,142.37890625 +115.56,142.1748504638672 +115.57,141.9755859375 +115.58,141.78103637695312 +115.59,141.59117126464844 +115.6,141.40591430664062 +115.61,141.22520446777344 +115.62,141.04901123046875 +115.63,140.87362670898438 +115.64,140.7026824951172 +115.65,140.5233917236328 +115.66,140.3431396484375 +115.67,140.16192626953125 +115.68,139.9851837158203 +115.69,139.81826782226562 +115.7,139.6502227783203 +115.71,139.48464965820312 +115.72,139.32333374023438 +115.73,139.16622924804688 +115.74,139.0042266845703 +115.75,138.8264617919922 +115.76,138.66940307617188 +115.77,138.51646423339844 +115.78,138.3621368408203 +115.79,138.21189880371094 +115.8,138.0711669921875 +115.81,137.93434143066406 +115.82,137.8013916015625 +115.83,137.68313598632812 +115.84,137.57943725585938 +115.85,137.48825073242188 +115.86,137.40951538085938 +115.87,137.3394012451172 +115.88,137.2669677734375 +115.89,137.21572875976562 +115.9,137.17645263671875 +115.91,137.13992309570312 +115.92,137.10606384277344 +115.93,137.0820770263672 +115.94,137.0442657470703 +115.95,137.0000457763672 +115.96,136.9567108154297 +115.97,136.91603088378906 +115.98,136.87428283691406 +115.99,136.8097381591797 +116,136.71359252929688 +116.01,136.61692810058594 +116.02,136.48171997070312 +116.03,136.34097290039062 +116.04,136.1983184814453 +116.05,135.9886016845703 +116.06,135.7686309814453 +116.07,135.5403594970703 +116.08,135.31112670898438 +116.09,135.0193328857422 +116.1,134.7073211669922 +116.11,134.38612365722656 +116.12,134.07037353515625 +116.13,133.7491912841797 +116.14,133.4334716796875 +116.15,133.1231689453125 +116.16,132.82907104492188 +116.17,132.54197692871094 +116.18,132.2691192626953 +116.19,132.00489807128906 +116.2,131.76007080078125 +116.21,131.52359008789062 +116.22,131.30441284179688 +116.23,131.10421752929688 +116.24,130.94268798828125 +116.25,130.78501892089844 +116.26,130.6311798095703 +116.27,130.49746704101562 +116.28,130.37637329101562 +116.29,130.28408813476562 +116.3,130.1967010498047 +116.31,130.11599731445312 +116.32,130.0527801513672 +116.33,129.99774169921875 +116.34,129.95989990234375 +116.35,129.93179321289062 +116.36,129.9060516357422 +116.37,129.88626098632812 +116.38,129.86871337890625 +116.39,129.8497314453125 +116.4,129.83657836914062 +116.41,129.83642578125 +116.42,129.83822631835938 +116.43,129.83106994628906 +116.44,129.81141662597656 +116.45,129.80653381347656 +116.46,129.8035888671875 +116.47,129.8025360107422 +116.48,129.80332946777344 +116.49,129.79327392578125 +116.5,129.7796630859375 +116.51,129.76437377929688 +116.52,129.73292541503906 +116.53,129.68905639648438 +116.54,129.6093292236328 +116.55,129.5321502685547 +116.56,129.4502410888672 +116.57,129.36732482910156 +116.58,129.2833251953125 +116.59,129.19464111328125 +116.6,129.1085662841797 +116.61,129.02322387695312 +116.62,128.94041442871094 +116.63,128.85470581054688 +116.64,128.7570343017578 +116.65,128.66201782226562 +116.66,128.54791259765625 +116.67,128.4311981201172 +116.68,128.3154754638672 +116.69,128.20079040527344 +116.7,128.0852813720703 +116.71,127.95989990234375 +116.72,127.81929016113281 +116.73,127.67994689941406 +116.74,127.5382308959961 +116.75,127.3796615600586 +116.76,127.22432708740234 +116.77,127.0432357788086 +116.78,126.86198425292969 +116.79,126.67879486083984 +116.8,126.49726104736328 +116.81,126.31195831298828 +116.82,126.1283950805664 +116.83,125.94470977783203 +116.84,125.75008392333984 +116.85,125.55545806884766 +116.86,125.36447143554688 +116.87,125.1698226928711 +116.88,124.96436309814453 +116.89,124.75361633300781 +116.9,124.53218078613281 +116.91,124.30925750732422 +116.92,124.08124542236328 +116.93,123.8518295288086 +116.94,123.62281799316406 +116.95,123.38695526123047 +116.96,123.15521240234375 +116.97,122.91671752929688 +116.98,122.6462173461914 +116.99,122.38021087646484 +117,122.1168212890625 +117.01,121.85429382324219 +117.02,121.59258270263672 +117.03,121.33531951904297 +117.04,121.07704162597656 +117.05,120.82319641113281 +117.06,120.54840087890625 +117.07,120.27643585205078 +117.08,119.98551177978516 +117.09,119.69035339355469 +117.1,119.39647674560547 +117.11,119.1056137084961 +117.12,118.81417846679688 +117.13,118.52581787109375 +117.14,118.22420501708984 +117.15,117.92216491699219 +117.16,117.61965942382812 +117.17,117.30413818359375 +117.18,116.99378204345703 +117.19,116.67767333984375 +117.2,116.36318969726562 +117.21,116.04842376708984 +117.22,115.72982788085938 +117.23,115.40745544433594 +117.24,115.08140563964844 +117.25,114.7607192993164 +117.26,114.44172668457031 +117.27,114.11538696289062 +117.28,113.79267120361328 +117.29,113.4500503540039 +117.3,113.11119079589844 +117.31,112.75626373291016 +117.32,112.38900756835938 +117.33,112.02764892578125 +117.34,111.6631088256836 +117.35,111.29727935791016 +117.36,110.9373779296875 +117.37,110.58336639404297 +117.38,110.23519897460938 +117.39,109.87837219238281 +117.4,109.529296875 +117.41,109.18605041503906 +117.42,108.84859466552734 +117.43,108.51687622070312 +117.44,108.18360137939453 +117.45,107.85242462158203 +117.46,107.51612854003906 +117.47,107.18560791015625 +117.48,106.8608169555664 +117.49,106.54170227050781 +117.5,106.22643280029297 +117.51,105.91676330566406 +117.52,105.60723114013672 +117.53,105.2797622680664 +117.54,104.95804595947266 +117.55,104.6366195678711 +117.56,104.31726837158203 +117.57,104.00361633300781 +117.58,103.69561004638672 +117.59,103.38778686523438 +117.6,103.08015441894531 +117.61,102.77812194824219 +117.62,102.48165130615234 +117.63,102.17807006835938 +117.64,101.87828063964844 +117.65,101.58404541015625 +117.66,101.2953109741211 +117.67,101.01202392578125 +117.68,100.73591613769531 +117.69,100.4795913696289 +117.7,100.2283935546875 +117.71,99.98946380615234 +117.72,99.76268005371094 +117.73,99.54071807861328 +117.74,99.3398208618164 +117.75,99.154296875 +117.76,98.99302673339844 +117.77,98.85391235351562 +117.78,98.7240982055664 +117.79,98.59990692138672 +117.8,98.48663330078125 +117.81,98.38419342041016 +117.82,98.32311248779297 +117.83,98.27772521972656 +117.84,98.23516845703125 +117.85,98.2044448852539 +117.86,98.17993927001953 +117.87,98.16525268554688 +117.88,98.1584243774414 +117.89,98.16838836669922 +117.9,98.1822738647461 +117.91,98.207275390625 +117.92,98.23968505859375 +117.93,98.27392578125 +117.94,98.3099594116211 +117.95,98.34774017333984 +117.96,98.38721466064453 +117.97,98.41205596923828 +117.98,98.42423248291016 +117.99,98.43109893798828 +118,98.4109878540039 +118.01,98.3894271850586 +118.02,98.36825561523438 +118.03,98.34561920166016 +118.04,98.27999114990234 +118.05,98.18083953857422 +118.06,98.082763671875 +118.07,97.96414947509766 +118.08,97.84500122070312 +118.09,97.72895050048828 +118.1,97.61233520507812 +118.11,97.49877166748047 +118.12,97.38822937011719 +118.13,97.26805114746094 +118.14,97.14012145996094 +118.15,97.01534271240234 +118.16,96.88641357421875 +118.17,96.7570571899414 +118.18,96.63085174560547 +118.19,96.50591278076172 +118.2,96.3840560913086 +118.21,96.25443267822266 +118.22,96.12793731689453 +118.23,96.00090026855469 +118.24,95.86796569824219 +118.25,95.70028686523438 +118.26,95.53610229492188 +118.27,95.36271667480469 +118.28,95.1928939819336 +118.29,95.0265884399414 +118.3,94.86376953125 +118.31,94.70439147949219 +118.32,94.55205535888672 +118.33,94.41209411621094 +118.34,94.2843246459961 +118.35,94.17407989501953 +118.36,94.06672668457031 +118.37,93.96222686767578 +118.38,93.84971618652344 +118.39,93.74010467529297 +118.4,93.63697052001953 +118.41,93.54203796386719 +118.42,93.44979095458984 +118.43,93.3602066040039 +118.44,93.27323913574219 +118.45,93.18885803222656 +118.46,93.11422729492188 +118.47,93.04923248291016 +118.48,92.986572265625 +118.49,92.92620849609375 +118.5,92.8626937866211 +118.51,92.80872344970703 +118.52,92.75692749023438 +118.53,92.707275390625 +118.54,92.65248107910156 +118.55,92.59983825683594 +118.56,92.54930877685547 +118.57,92.50086975097656 +118.58,92.45447540283203 +118.59,92.41011047363281 +118.6,92.35511779785156 +118.61,92.30221557617188 +118.62,92.2297134399414 +118.63,92.14143371582031 +118.64,92.04473876953125 +118.65,91.9468994140625 +118.66,91.81365966796875 +118.67,91.68148803710938 +118.68,91.5503158569336 +118.69,91.40936279296875 +118.7,91.26776123046875 +118.71,91.12368774414062 +118.72,90.95729064941406 +118.73,90.76885986328125 +118.74,90.57843780517578 +118.75,90.36802673339844 +118.76,90.1252212524414 +118.77,89.83596801757812 +118.78,89.53496551513672 +118.79,89.21336364746094 +118.8,88.88941955566406 +118.81,88.56133270263672 +118.82,88.22559356689453 +118.83,87.88050842285156 +118.84,87.54060363769531 +118.85,87.1914291381836 +118.86,86.82769775390625 +118.87,86.46939849853516 +118.88,86.11648559570312 +118.89,85.77249908447266 +118.9,85.43379211425781 +118.91,85.10032653808594 +118.92,84.78646850585938 +118.93,84.47763061523438 +118.94,84.188232421875 +118.95,83.90541076660156 +118.96,83.62911987304688 +118.97,83.38273620605469 +118.98,83.1479263305664 +118.99,82.92822265625 +119,82.72887420654297 +119.01,82.5514144897461 +119.02,82.38311004638672 +119.03,82.24178314208984 +119.04,82.10555267333984 +119.05,81.97257995605469 +119.06,81.84645080566406 +119.07,81.72346496582031 +119.08,81.61262512207031 +119.09,81.50653076171875 +119.1,81.40335845947266 +119.11,81.30306243896484 +119.12,81.20381927490234 +119.13,81.10014343261719 +119.14,81.00657653808594 +119.15,80.91033935546875 +119.16,80.8168716430664 +119.17,80.72428894042969 +119.18,80.62543487548828 +119.19,80.51851654052734 +119.2,80.41443634033203 +119.21,80.31317138671875 +119.22,80.23091125488281 +119.23,80.1259994506836 +119.24,80.02388000488281 +119.25,79.92630004882812 +119.26,79.83505249023438 +119.27,79.75719451904297 +119.28,79.68182373046875 +119.29,79.60169982910156 +119.3,79.52406311035156 +119.31,79.44888305664062 +119.32,79.37975311279297 +119.33,79.3129653930664 +119.34,79.25028228759766 +119.35,79.18985748291016 +119.36,79.12987518310547 +119.37,79.07210540771484 +119.38,79.01651763916016 +119.39,78.94320678710938 +119.4,78.86322784423828 +119.41,78.77843475341797 +119.42,78.68708038330078 +119.43,78.59278869628906 +119.44,78.49738311767578 +119.45,78.40448760986328 +119.46,78.32311248779297 +119.47,78.2332763671875 +119.48,78.14045715332031 +119.49,78.04468536376953 +119.5,77.9405746459961 +119.51,77.826416015625 +119.52,77.70415496826172 +119.53,77.57560729980469 +119.54,77.4390869140625 +119.55,77.30183410644531 +119.56,77.14766693115234 +119.57,76.99114990234375 +119.58,76.82875061035156 +119.59,76.667724609375 +119.6,76.50080871582031 +119.61,76.31370544433594 +119.62,76.11199951171875 +119.63,75.91029357910156 +119.64,75.70854949951172 +119.65,75.51038360595703 +119.66,75.31220245361328 +119.67,75.10675811767578 +119.68,74.90132904052734 +119.69,74.67794799804688 +119.7,74.45120239257812 +119.71,74.22655487060547 +119.72,74.00220489501953 +119.73,73.7726821899414 +119.74,73.5470962524414 +119.75,73.32183074951172 +119.76,73.09326934814453 +119.77,72.85247039794922 +119.78,72.60135650634766 +119.79,72.34539031982422 +119.8,72.08832550048828 +119.81,71.83369445800781 +119.82,71.58516693115234 +119.83,71.3390121459961 +119.84,71.09169006347656 +119.85,70.85394287109375 +119.86,70.62215423583984 +119.87,70.39443969726562 +119.88,70.17254638671875 +119.89,69.95641326904297 +119.9,69.75682067871094 +119.91,69.56098937988281 +119.92,69.3724594116211 +119.93,69.19120788574219 +119.94,69.01710510253906 +119.95,68.85733795166016 +119.96,68.70272064208984 +119.97,68.55140686035156 +119.98,68.40335845947266 +119.99,68.258544921875 +120,68.12591552734375 +120.01,68.0053939819336 +120.02,67.89138793945312 +120.03,67.78025817871094 +120.04,67.67374420166016 +120.05,67.57000732421875 +120.06,67.4690170288086 +120.07,67.37073516845703 +120.08,67.28054809570312 +120.09,67.18753051757812 +120.1,67.09711456298828 +120.11,67.00748443603516 +120.12,66.91863250732422 +120.13,66.826904296875 +120.14,66.73233032226562 +120.15,66.64034271240234 +120.16,66.5509033203125 +120.17,66.46398162841797 +120.18,66.37596893310547 +120.19,66.28324890136719 +120.2,66.18765258789062 +120.21,66.09461212158203 +120.22,65.96089172363281 +120.23,65.7923355102539 +120.24,65.61808776855469 +120.25,65.44540405273438 +120.26,65.26886749267578 +120.27,65.09030151367188 +120.28,64.89175415039062 +120.29,64.69503784179688 +120.3,64.47134399414062 +120.31,64.24795532226562 +120.32,64.02305603027344 +120.33,63.79848861694336 +120.34,63.57421112060547 +120.35,63.35385513305664 +120.36,63.137386322021484 +120.37,62.92477035522461 +120.38,62.71240234375 +120.39,62.50385665893555 +120.4,62.268516540527344 +120.41,62.035457611083984 +120.42,61.79747009277344 +120.43,61.563594818115234 +120.44,61.33380126953125 +120.45,61.099063873291016 +120.46,60.864803314208984 +120.47,60.6346435546875 +120.48,60.40855407714844 +120.49,60.16852569580078 +120.5,59.93267822265625 +120.51,59.70996856689453 +120.52,59.491275787353516 +120.53,59.27656555175781 +120.54,59.05681610107422 +120.55,58.85005569458008 +120.56,58.638187408447266 +120.57,58.43024826049805 +120.58,58.235191345214844 +120.59,58.04389953613281 +120.6,57.859962463378906 +120.61,57.679683685302734 +120.62,57.49760818481445 +120.63,57.3245849609375 +120.64,57.14969253540039 +120.65,56.9837760925293 +120.66,56.82133102416992 +120.67,56.65690994262695 +120.68,56.49415588378906 +120.69,56.32222366333008 +120.7,56.152034759521484 +120.71,55.96018600463867 +120.72,55.772071838378906 +120.73,55.585872650146484 +120.74,55.3997802734375 +120.75,55.20296859741211 +120.76,55.009952545166016 +120.77,54.8206901550293 +120.78,54.63514709472656 +120.79,54.437103271484375 +120.8,54.23751449584961 +120.81,54.04175567626953 +120.82,53.849796295166016 +120.83,53.65260696411133 +120.84,53.455604553222656 +120.85,53.244441986083984 +120.86,53.0372428894043 +120.87,52.821414947509766 +120.88,52.60603332519531 +120.89,52.3946647644043 +120.9,52.187278747558594 +120.91,51.98383712768555 +120.92,51.7843017578125 +120.93,51.59940719604492 +120.94,51.41822814941406 +120.95,51.24073028564453 +120.96,51.068660736083984 +120.97,50.90196228027344 +120.98,50.73879623413086 +120.99,50.58632278442383 +121,50.44264221191406 +121.01,50.309391021728516 +121.02,50.20091247558594 +121.03,50.10249328613281 +121.04,50.006874084472656 +121.05,49.91402053833008 +121.06,49.83651351928711 +121.07,49.77412414550781 +121.08,49.71413040161133 +121.09,49.656494140625 +121.1,49.60118103027344 +121.11,49.533809661865234 +121.12,49.42390823364258 +121.13,49.30606460571289 +121.14,49.191123962402344 +121.15,49.0754280090332 +121.16,48.89792251586914 +121.17,48.70416259765625 +121.18,48.48355484008789 +121.19,48.26154708862305 +121.2,48.03095626831055 +121.21,47.800811767578125 +121.22,47.55141067504883 +121.23,47.2955207824707 +121.24,47.04398727416992 +121.25,46.7932014465332 +121.26,46.54673385620117 +121.27,46.3045539855957 +121.28,46.066619873046875 +121.29,45.820343017578125 +121.3,45.59092712402344 +121.31,45.36565017700195 +121.32,45.144474029541016 +121.33,44.920162200927734 +121.34,44.699951171875 +121.35,44.47844696044922 +121.36,44.24846649169922 +121.37,44.01903533935547 +121.38,43.79377746582031 +121.39,43.53498077392578 +121.4,43.26990509033203 +121.41,43.0093879699707 +121.42,42.751609802246094 +121.43,42.49654769897461 +121.44,42.2459716796875 +121.45,41.99983596801758 +121.46,41.75811004638672 +121.47,41.535099029541016 +121.48,41.323463439941406 +121.49,41.119468688964844 +121.5,40.919464111328125 +121.51,40.72340774536133 +121.52,40.53845977783203 +121.53,40.3573112487793 +121.54,40.18349075317383 +121.55,40.01692199707031 +121.56,39.85574722290039 +121.57,39.70353317260742 +121.58,39.554771423339844 +121.59,39.41120910644531 +121.6,39.28177261352539 +121.61,39.155540466308594 +121.62,39.0450325012207 +121.63,38.939308166503906 +121.64,38.85270690917969 +121.65,38.76884078979492 +121.66,38.68767166137695 +121.67,38.609161376953125 +121.68,38.53327178955078 +121.69,38.459964752197266 +121.7,38.38920211791992 +121.71,38.28684616088867 +121.72,38.18552780151367 +121.73,38.056488037109375 +121.74,37.917972564697266 +121.75,37.7538948059082 +121.76,37.57533645629883 +121.77,37.37525177001953 +121.78,37.164634704589844 +121.79,36.954368591308594 +121.8,36.6923828125 +121.81,36.42230224609375 +121.82,36.10839080810547 +121.83,35.752891540527344 +121.84,35.40285873413086 +121.85,35.02241897583008 +121.86,34.62624740600586 +121.87,34.221675872802734 +121.88,33.81060028076172 +121.89,33.39311218261719 +121.9,32.98185729980469 +121.91,32.57679748535156 +121.92,32.17789077758789 +121.93,31.810209274291992 +121.94,31.453697204589844 +121.95,31.11004066467285 +121.96,30.773818969726562 +121.97,30.444917678833008 +121.98,30.125059127807617 +121.99,29.8123779296875 +122,29.52651596069336 +122.01,29.247501373291016 +122.02,28.98961639404297 +122.03,28.788537979125977 +122.04,28.595237731933594 +122.05,28.4150447845459 +122.06,28.25497055053711 +122.07,28.12373161315918 +122.08,27.997806549072266 +122.09,27.8770751953125 +122.1,27.775819778442383 +122.11,27.69919204711914 +122.12,27.63620376586914 +122.13,27.581344604492188 +122.14,27.55600357055664 +122.15,27.51498794555664 +122.16,27.494382858276367 +122.17,27.475988388061523 +122.18,27.45976448059082 +122.19,27.44745635986328 +122.2,27.4407901763916 +122.21,27.437904357910156 +122.22,27.435165405273438 +122.23,27.43433952331543 +122.24,27.435388565063477 +122.25,27.43827247619629 +122.26,27.442955017089844 +122.27,27.449398040771484 +122.28,27.436073303222656 +122.29,27.41388511657715 +122.3,27.375707626342773 +122.31,27.318174362182617 +122.32,27.252187728881836 +122.33,27.183237075805664 +122.34,27.09872817993164 +122.35,27.01142692565918 +122.36,26.917724609375 +122.37,26.806962966918945 +122.38,26.675683975219727 +122.39,26.531291961669922 +122.4,26.3864803314209 +122.41,26.239463806152344 +122.42,26.09562110900879 +122.43,25.9531307220459 +122.44,25.802993774414062 +122.45,25.645286560058594 +122.46,25.471153259277344 +122.47,25.250289916992188 +122.48,25.03335952758789 +122.49,24.81496810913086 +122.5,24.577220916748047 +122.51,24.343595504760742 +122.52,24.11406135559082 +122.53,23.877809524536133 +122.54,23.645689010620117 +122.55,23.428434371948242 +122.56,23.204357147216797 +122.57,22.984302520751953 +122.58,22.76287841796875 +122.59,22.54546356201172 +122.6,22.306957244873047 +122.61,22.06723403930664 +122.62,21.829938888549805 +122.63,21.59326934814453 +122.64,21.355436325073242 +122.65,21.120033264160156 +122.66,20.87448501586914 +122.67,20.631460189819336 +122.68,20.387367248535156 +122.69,20.138595581054688 +122.7,19.894189834594727 +122.71,19.654109954833984 +122.72,19.418319702148438 +122.73,19.186779022216797 +122.74,18.954092025756836 +122.75,18.722063064575195 +122.76,18.479921340942383 +122.77,18.240331649780273 +122.78,18.00506019592285 +122.79,17.77406883239746 +122.8,17.54374885559082 +122.81,17.317668914794922 +122.82,17.09579086303711 +122.83,16.878074645996094 +122.84,16.65376091003418 +122.85,16.38709259033203 +122.86,16.117916107177734 +122.87,15.846266746520996 +122.88,15.579323768615723 +122.89,15.309846878051758 +122.9,15.045071601867676 +122.91,14.784956932067871 +122.92,14.506186485290527 +122.93,14.221519470214844 +122.94,13.936384201049805 +122.95,13.641810417175293 +122.96,13.352249145507812 +122.97,13.067659378051758 +122.98,12.788000106811523 +122.99,12.513229370117188 +123,12.243304252624512 +123.01,11.97818374633789 +123.02,11.726811408996582 +123.03,11.48006534576416 +123.04,11.237902641296387 +123.05,10.991296768188477 +123.06,10.742137908935547 +123.07,10.501174926757812 +123.08,10.264755249023438 +123.09,10.036407470703125 +123.1,9.812480926513672 +123.11,9.592931747436523 +123.12,9.374144554138184 +123.13,9.159686088562012 +123.14,8.949512481689453 +123.15,8.748991966247559 +123.16,8.552614212036133 +123.17,8.360335350036621 +123.18,8.173898696899414 +123.19,7.982470512390137 +123.2,7.79508638381958 +123.21,7.611703395843506 +123.22,7.439477443695068 +123.23,7.26389217376709 +123.24,7.092179298400879 +123.25,6.917150497436523 +123.26,6.751340389251709 +123.27,6.589292049407959 +123.28,6.432748794555664 +123.29,6.279863357543945 +123.3,6.130593299865723 +123.31,5.983109951019287 +123.32,5.8409624099731445 +123.33,5.702302932739258 +123.34,5.574289798736572 +123.35,5.449606418609619 +123.36,5.328210830688477 +123.37,5.210062026977539 +123.38,5.093277931213379 +123.39,4.979676723480225 +123.4,4.869217395782471 +123.41,4.758286952972412 +123.42,4.639735698699951 +123.43,4.524351596832275 +123.44,4.422812461853027 +123.45,4.313531398773193 +123.46,4.207296848297119 +123.47,4.104069232940674 +123.48,4.014525890350342 +123.49,3.9295854568481445 +123.5,3.856389045715332 +123.51,3.7858192920684814 +123.52,3.7088520526885986 +123.53,3.6345269680023193 +123.54,3.571791172027588 +123.55,3.509742021560669 +123.56,3.451932430267334 +123.57,3.400092840194702 +123.58,3.347003221511841 +123.59,3.299808979034424 +123.6,3.254863977432251 +123.61,3.2121312618255615 +123.62,3.171574831008911 +123.63,3.1331584453582764 +123.64,3.096846580505371 +123.65,3.0626039505004883 +123.66,3.025036334991455 +123.67,2.989523410797119 +123.68,2.9560306072235107 +123.69,2.9173240661621094 +123.7,2.880643844604492 +123.71,2.84059739112854 +123.72,2.802565336227417 +123.73,2.766514539718628 +123.74,2.7288401126861572 +123.75,2.693118095397949 +123.76,2.659316301345825 +123.77,2.6274027824401855 +123.78,2.5973451137542725 +123.79,2.5691120624542236 +123.8,2.5498170852661133 +123.81,2.5357823371887207 +123.82,2.5233676433563232 +123.83,2.51438307762146 +123.84,2.506938934326172 +123.85,2.501004934310913 +123.86,2.496551513671875 +123.87,2.4935495853424072 +123.88,2.4865572452545166 +123.89,2.4792275428771973 +123.9,2.473337173461914 +123.91,2.4634997844696045 +123.92,2.451528310775757 +123.93,2.444577217102051 +123.94,2.437223196029663 +123.95,2.433030605316162 +123.96,2.43552565574646 +123.97,2.439268112182617 +123.98,2.4478044509887695 +123.99,2.459285020828247 +124,2.473719596862793 +124.01,2.494582176208496 +124.02,2.527150869369507 +124.03,2.5623586177825928 +124.04,2.5983757972717285 +124.05,2.633392572402954 +124.06,2.6620445251464844 +124.07,2.6915271282196045 +124.08,2.7218170166015625 +124.09,2.747532367706299 +124.1,2.757934331893921 +124.11,2.7692978382110596 +124.12,2.7780282497406006 +124.13,2.787713050842285 +124.14,2.7983310222625732 +124.15,2.8152194023132324 +124.16,2.836515188217163 +124.17,2.858588218688965 +124.18,2.8867766857147217 +124.19,2.9156458377838135 +124.2,2.9541611671447754 +124.21,2.993224620819092 +124.22,3.0328164100646973 +124.23,3.063932180404663 +124.24,3.084914207458496 +124.25,3.104785203933716 +124.26,3.1235456466674805 +124.27,3.142982006072998 +124.28,3.163076400756836 +124.29,3.1838109493255615 +124.3,3.20695424079895 +124.31,3.232470989227295 +124.32,3.2585391998291016 +124.33,3.30305814743042 +124.34,3.347909927368164 +124.35,3.407367467880249 +124.36,3.4526877403259277 +124.37,3.489306926727295 +124.38,3.535273551940918 +124.39,3.5725083351135254 +124.4,3.5993573665618896 +124.41,3.626634120941162 +124.42,3.6543240547180176 +124.43,3.6931307315826416 +124.44,3.721493721008301 +124.45,3.7609453201293945 +124.46,3.7881393432617188 +124.47,3.8156957626342773 +124.48,3.861517906188965 +124.49,3.9074904918670654 +124.5,3.953601121902466 +124.51,3.987278699874878 +124.52,4.021198749542236 +124.53,4.067907333374023 +124.54,4.116490840911865 +124.55,4.165132522583008 +124.56,4.213820934295654 +124.57,4.262545108795166 +124.58,4.311293601989746 +124.59,4.360056400299072 +124.6,4.408822059631348 +124.61,4.457580089569092 +124.62,4.506320953369141 +124.63,4.553248405456543 +124.64,4.600156784057617 +124.65,4.647037029266357 +124.66,4.697451591491699 +124.67,4.747782230377197 +124.68,4.794448375701904 +124.69,4.839262962341309 +124.7,4.882182598114014 +124.71,4.925058364868164 +124.72,4.962522983551025 +124.73,4.999982833862305 +124.74,5.037430763244629 +124.75,5.07485818862915 +124.76,5.112257957458496 +124.77,5.149622440338135 +124.78,5.186944484710693 +124.79,5.222431659698486 +124.8,5.257880687713623 +124.81,5.293285369873047 +124.82,5.330424785614014 +124.83,5.367488384246826 +124.84,5.4080424308776855 +124.85,5.4484710693359375 +124.86,5.488768577575684 +124.87,5.50749397277832 +124.88,5.547732830047607 +124.89,5.580678462982178 +124.9,5.620688438415527 +124.91,5.6533942222595215 +124.92,5.686009407043457 +124.93,5.716742992401123 +124.94,5.749180316925049 +124.95,5.781512260437012 +124.96,5.831650257110596 +124.97,5.863572120666504 +124.98,5.893589019775391 +124.99,5.923501014709473 +125,5.955090045928955 +125.01,5.979402542114258 +125.02,6.01079797744751 +125.03,6.042053699493408 +125.04,6.080311298370361 +125.05,6.118347644805908 +125.06,6.1561598777771 +125.07,6.19374418258667 +125.08,6.236510753631592 +125.09,6.278986930847168 +125.1,6.321169853210449 +125.11,6.363056182861328 +125.12,6.404643535614014 +125.13,6.445929050445557 +125.14,6.485123634338379 +125.15,6.52402925491333 +125.16,6.5626444816589355 +125.17,6.600966453552246 +125.18,6.638993740081787 +125.19,6.676723480224609 +125.2,6.7141547203063965 +125.21,6.751285076141357 +125.22,6.788112640380859 +125.23,6.824635982513428 +125.24,6.859013557434082 +125.25,6.893103122711182 +125.26,6.926903247833252 +125.27,6.960412979125977 +125.28,6.988272190093994 +125.29,7.015893936157227 +125.3,7.039705276489258 +125.31,7.063313961029053 +125.32,7.076002597808838 +125.33,7.099315643310547 +125.34,7.1224236488342285 +125.35,7.145326614379883 +125.36,7.157305717468262 +125.37,7.172761917114258 +125.38,7.195229530334473 +125.39,7.2103447914123535 +125.4,7.225326061248779 +125.41,7.240172386169434 +125.42,7.254883289337158 +125.43,7.265886306762695 +125.44,7.276790618896484 +125.45,7.291168689727783 +125.46,7.301837921142578 +125.47,7.303476333618164 +125.48,7.3140387535095215 +125.49,7.324501037597656 +125.5,7.349152565002441 +125.51,7.369983673095703 +125.52,7.390604019165039 +125.53,7.411013126373291 +125.54,7.431210517883301 +125.55,7.454769134521484 +125.56,7.478079319000244 +125.57,7.497569561004639 +125.58,7.509704113006592 +125.59,7.521701812744141 +125.6,7.533563613891602 +125.61,7.545289039611816 +125.62,7.567595481872559 +125.63,7.578938961029053 +125.64,7.5883612632751465 +125.65,7.597667217254639 +125.66,7.6068572998046875 +125.67,7.633793354034424 +125.68,7.660429954528809 +125.69,7.686767101287842 +125.7,7.689585208892822 +125.71,7.692345142364502 +125.72,7.7093377113342285 +125.73,7.735056400299072 +125.74,7.760478973388672 +125.75,7.789233207702637 +125.76,7.817654609680176 +125.77,7.8457441329956055 diff --git a/docs/conf.py b/docs/conf.py index 1bbdd7058..4779e5d5f 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -27,7 +27,7 @@ author = "RocketPy Team" # The full version, including alpha/beta/rc tags -release = "1.12.1" +release = "1.13.0" # -- General configuration --------------------------------------------------- @@ -67,6 +67,18 @@ "allow_errors": True, # Continue building even if cells raise errors } +# When DOCS_SKIP_EXECUTE=1, ``jupyter-execute`` directives are rendered as +# static (non-executing) code blocks instead of running live code. This makes +# structural doc builds fast and deterministic (no simulations, no network), +# which is what the GitHub Actions docs check relies on. Read the Docs leaves +# this unset, so it still executes the cells and renders their live outputs. +skip_jupyter_execute = os.environ.get("DOCS_SKIP_EXECUTE") == "1" + +# Some notebook cells use IPython shell escapes (e.g. ``!pip install rocketpy``) +# which the Pygments Python lexer cannot tokenize. These are purely cosmetic +# syntax-highlighting failures, so don't let them fail a warnings-as-errors build. +suppress_warnings = ["misc.highlighting_failure"] + # Add any paths that contain templates here, relative to this directory. templates_path = ["_templates"] @@ -150,3 +162,46 @@ html_file_suffix = ".html" htmlhelp_basename = "rocketpy" + + +def setup(app): + """Sphinx entry point for optional build-time customizations.""" + if skip_jupyter_execute: + from docutils.parsers.rst import directives + from sphinx.directives.code import CodeBlock + + class StaticJupyterExecute(CodeBlock): + """Render ``jupyter-execute`` as a non-executing Python code block. + + Accepts (and ignores) the ``jupyter-execute`` directive options so + existing pages parse unchanged, but produces a plain highlighted + code block instead of a live-executed cell. + """ + + required_arguments = 0 + optional_arguments = 1 + option_spec = dict(CodeBlock.option_spec) + option_spec.update( + { + "hide-code": directives.flag, + "hide-output": directives.flag, + "code-below": directives.flag, + "stderr": directives.flag, + "raises": directives.unchanged, + } + ) + + def run(self): + for key in ( + "hide-code", + "hide-output", + "code-below", + "stderr", + "raises", + ): + self.options.pop(key, None) + if not self.arguments: + self.arguments = ["python3"] + return super().run() + + app.add_directive("jupyter-execute", StaticJupyterExecute, override=True) diff --git a/docs/development/first_pr.rst b/docs/development/first_pr.rst index 5f3eb876c..c0b07e7f1 100644 --- a/docs/development/first_pr.rst +++ b/docs/development/first_pr.rst @@ -96,14 +96,13 @@ The CHANGELOG file ------------------ We keep track of the changes in the ``CHANGELOG.md`` file. -When you open a PR, you should add a new entry to the "Unreleased" section of the file. -This entry should simply be the title of your PR. +When you open a PR, you should see the "Unreleased" section of the file. +An entry will simply contain the title of your PR if merged. .. note:: - In the future we would like to automate the CHANGELOG update, but for now \ - it is a manual process, unfortunately. - + The CHANGELOG is auto-updated once a PR is merged based on the associated labels, \ + which are assigned by the maintainers. The review process ------------------ diff --git a/docs/development/pro_tips.rst b/docs/development/pro_tips.rst index 465ff7982..9ff491c4b 100644 --- a/docs/development/pro_tips.rst +++ b/docs/development/pro_tips.rst @@ -53,13 +53,25 @@ productive. Code assistance --------------- -Artificial Intelligence (AI) assistance has becoming more and more common in +Artificial Intelligence (AI) assistance has become more and more common in software development. Some editors have AI assistance built-in. -Famous options are GitHub Copilot, JetBrains AI and TabNine. - -At this repo, the use of AI tools is welcome, we don't have any restrictions -against it. +Famous options are Google Antigravity, GitHub Copilot, Claude Code, +JetBrains AI, and TabNine. + +In this repository, the use of AI tools is welcome; we don't have any +restrictions against it. To help AI tools perform better and follow our +standards, we provide pre-configured instructions and skill files within +the repository: + +* **GitHub Copilot**: Uses ``.github/copilot-instructions.md`` (general + codebase rules). +* **Google Antigravity**: Uses the ``.agents/`` folder, containing general + workspace rules (``.agents/AGENTS.md``) and contextual workflows + (``.agents/skills/``) for simulation safety, test authoring, + documentation, and code review. +* **Claude / Claude Code**: Permissions configured via + ``.claude/settings.json``. A few possible applications of AI tools are: @@ -69,11 +81,9 @@ A few possible applications of AI tools are: .. tip:: - As of today, November 2024, GitHub Copilot still provides free access for \ - university email addresses. We can't guarantee this will still be the case \ - when you are reading this, so check the GitHub Copilot website for more \ - information. - + Using these pre-configured rules ensures that your AI assistant adheres + to RocketPy's style guides (snake_case, NumPy docstrings, 88-char line + limits) and testing conventions (AAA structure). If you are against the use of AI tools, do not worry, you can still contribute to the project without using them. diff --git a/docs/development/style_guide.rst b/docs/development/style_guide.rst index 510a49560..15a80e5e4 100644 --- a/docs/development/style_guide.rst +++ b/docs/development/style_guide.rst @@ -162,15 +162,16 @@ Standard acronyms to start the commit message with are:: Pull Requests ^^^^^^^^^^^^^ -When opening a Pull Request, the name of the PR should be clear and concise. -Similarly to the commit messages, the PR name should start with an acronym indicating the type of PR -and then a brief description of the changes. +When opening a Pull Request, the title should be clear and concise. +It should contain only a brief desctiption of the changes without the acronym (e.g. ENH:, BUG:). +The maintainers will label your PR accordingly, which will add a prefix via a workflow to indicate +type of the PR in the CHANGELOG file. Here is an example of a good PR name: -- ``BUG: fix the Frequency Response plot of the Flight class`` +- ``fix the Frequency Response plot of the Flight class`` -The PR description explain the changes and motivation behind them. There is a template \ +The PR description explains the changes and motivation behind them. There is a template \ available when opening a PR that can be used to guide you through the process of both \ describing the changes and making sure all the necessary steps were taken. Of course, \ you can always modify the template or add more information if you think it is necessary. diff --git a/docs/development/testing.rst b/docs/development/testing.rst index fd521167b..e84fde2a2 100644 --- a/docs/development/testing.rst +++ b/docs/development/testing.rst @@ -257,8 +257,7 @@ Consider the following integration test: """ # TODO:: this should be added to the set_atmospheric_model() method as a # "file" option, instead of receiving the URL as a string. - URL = "http://weather.uwyo.edu/cgi-bin/sounding?region=samer&TYPE=TEXT%3ALIST&YEAR=2019&MONTH=02&FROM=0500&TO=0512&STNM=83779" - # give it at least 5 times to try to download the file + URL = "https://weather.uwyo.edu/wsgi/sounding?datetime=2019-02-05+00:00:00&id=83779&type=TEXT:LIST" example_plain_env.set_atmospheric_model(type="wyoming_sounding", file=URL) assert example_plain_env.all_info() is None @@ -267,7 +266,7 @@ Consider the following integration test: abs(example_plain_env.barometric_height(example_plain_env.pressure(0)) - 722.0) < 1e-8 ) - assert abs(example_plain_env.wind_velocity_x(0) - -2.9005178894925043) < 1e-8 + assert abs(example_plain_env.wind_velocity_x(0) - -2.9130471244363165) < 1e-8 assert abs(example_plain_env.temperature(100) - 291.75) < 1e-8 This test contains two fundamental traits which defines it as an integration test: diff --git a/docs/examples/andromeda_flight_sim.ipynb b/docs/examples/andromeda_flight_sim.ipynb index 9126045b9..7ea8a9d05 100644 --- a/docs/examples/andromeda_flight_sim.ipynb +++ b/docs/examples/andromeda_flight_sim.ipynb @@ -37,7 +37,14 @@ "source": [ "import matplotlib.pyplot as plt\n", "\n", - "from rocketpy import Environment, Flight, Function, Rocket, SolidMotor\n", + "from rocketpy import (\n", + " Environment,\n", + " Flight,\n", + " Function,\n", + " HemisphericalParachute,\n", + " Rocket,\n", + " SolidMotor,\n", + ")\n", "\n", "plt.style.use(\"seaborn-v0_8-colorblind\")" ] @@ -258,7 +265,7 @@ }, { "cell_type": "code", - "execution_count": 64, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -276,13 +283,15 @@ " position=0.3546,\n", ")\n", "\n", - "Drogue = Andromeda.add_parachute(\n", + "Drogue = HemisphericalParachute(\n", " \"Drogue\", cd_s=0.84665922014, trigger=\"apogee\", sampling_rate=100, lag=0\n", ")\n", "\n", - "Main = Andromeda.add_parachute(\n", + "Main = HemisphericalParachute(\n", " \"Main\", cd_s=8.362919643856031, trigger=500, sampling_rate=100, lag=0\n", - ")" + ")\n", + "Andromeda.add_parachute(parachute=Drogue)\n", + "Andromeda.add_parachute(parachute=Main)" ] }, { diff --git a/docs/examples/bella_lui_flight_sim.ipynb b/docs/examples/bella_lui_flight_sim.ipynb index c6aa685e8..11fe86553 100644 --- a/docs/examples/bella_lui_flight_sim.ipynb +++ b/docs/examples/bella_lui_flight_sim.ipynb @@ -31,7 +31,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -40,7 +40,14 @@ "import numpy as np\n", "from scipy.signal import savgol_filter\n", "\n", - "from rocketpy import Environment, Flight, Function, Rocket, SolidMotor" + "from rocketpy import (\n", + " Environment,\n", + " Flight,\n", + " Function,\n", + " HemisphericalParachute,\n", + " Rocket,\n", + " SolidMotor,\n", + ")" ] }, { @@ -422,18 +429,19 @@ }, { "cell_type": "code", - "execution_count": 44, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "Drogue = bella_lui.add_parachute(\n", + "Drogue = HemisphericalParachute(\n", " \"Drogue\",\n", " cd_s=parameters.get(\"CdS_drogue\")[0],\n", " trigger=\"apogee\",\n", " sampling_rate=105,\n", " lag=parameters.get(\"lag_rec\")[0],\n", " noise=(0, 8.3, 0.5),\n", - ")" + ")\n", + "bella_lui.add_parachute(parachute=Drogue)" ] }, { diff --git a/docs/examples/camoes_flight_sim.ipynb b/docs/examples/camoes_flight_sim.ipynb index 12278daf2..44fac3613 100644 --- a/docs/examples/camoes_flight_sim.ipynb +++ b/docs/examples/camoes_flight_sim.ipynb @@ -52,6 +52,7 @@ " Environment,\n", " Flight,\n", " Function,\n", + " HemisphericalParachute,\n", " Rocket,\n", " SolidMotor,\n", ")\n", @@ -299,7 +300,7 @@ }, { "cell_type": "code", - "execution_count": 85, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -307,9 +308,10 @@ " return True if y[5] < 5 and y[2] > 300 else False\n", "\n", "\n", - "Drogue = CAMOES.add_parachute(\n", + "Drogue = HemisphericalParachute(\n", " \"Drogue\", cd_s=0.33, sampling_rate=400, lag=1.5, trigger=drogue_trigger\n", - ")" + ")\n", + "CAMOES.add_parachute(parachute=Drogue)" ] }, { diff --git a/docs/examples/defiance_flight_sim.ipynb b/docs/examples/defiance_flight_sim.ipynb index eb1479eb5..c8bbfa432 100644 --- a/docs/examples/defiance_flight_sim.ipynb +++ b/docs/examples/defiance_flight_sim.ipynb @@ -21,13 +21,13 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import datetime\n", "\n", - "from rocketpy import Environment, Flight, Function, Rocket\n", + "from rocketpy import Environment, Flight, Function, HemisphericalParachute, Rocket\n", "from rocketpy.motors import CylindricalTank, Fluid, HybridMotor\n", "from rocketpy.motors.tank import MassFlowRateBasedTank" ] @@ -185,7 +185,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": {}, "outputs": [ { @@ -221,11 +221,15 @@ "\n", "defiance.add_tail(top_radius=0.07, bottom_radius=0.064, length=0.0597, position=0.1)\n", "\n", - "defiance.add_parachute(name=\"main\", cd_s=2.2, trigger=305, sampling_rate=100, lag=0)\n", + "Main = HemisphericalParachute(\n", + " name=\"main\", cd_s=2.2, trigger=305, sampling_rate=100, lag=0\n", + ")\n", "\n", - "defiance.add_parachute(\n", + "Drogue = HemisphericalParachute(\n", " name=\"drogue\", cd_s=1.55, trigger=\"apogee\", sampling_rate=100, lag=0\n", - ")" + ")\n", + "defiance.add_parachute(parachute=Main)\n", + "defiance.add_parachute(parachute=Drogue)" ] }, { diff --git a/docs/examples/genesis_flight_sim.ipynb b/docs/examples/genesis_flight_sim.ipynb index cbda3ed6f..295387195 100644 --- a/docs/examples/genesis_flight_sim.ipynb +++ b/docs/examples/genesis_flight_sim.ipynb @@ -37,7 +37,7 @@ "source": [ "import matplotlib.pyplot as plt\n", "\n", - "from rocketpy import Environment, Flight, Function, Rocket\n", + "from rocketpy import Environment, Flight, Function, HemisphericalParachute, Rocket\n", "from rocketpy.motors import SolidMotor\n", "\n", "plt.style.use(\"seaborn-v0_8-colorblind\")" @@ -267,11 +267,11 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "Drogue = GENESIS.add_parachute(\n", + "Drogue = HemisphericalParachute(\n", " name=\"Drogue\",\n", " cd_s=0.285005285533666,\n", " trigger=\"apogee\",\n", @@ -280,14 +280,16 @@ " noise=(0, 8.3, 0.5),\n", ")\n", "\n", - "Main = GENESIS.add_parachute(\n", + "Main = HemisphericalParachute(\n", " name=\"Main\",\n", " cd_s=1.1,\n", " trigger=870,\n", " sampling_rate=105,\n", " lag=1,\n", " noise=(0, 8.3, 0.5),\n", - ")" + ")\n", + "GENESIS.add_parachute(parachute=Drogue)\n", + "GENESIS.add_parachute(parachute=Main)" ] }, { diff --git a/docs/examples/halcyon_flight_sim.ipynb b/docs/examples/halcyon_flight_sim.ipynb index 503961448..ad10aa412 100644 --- a/docs/examples/halcyon_flight_sim.ipynb +++ b/docs/examples/halcyon_flight_sim.ipynb @@ -31,7 +31,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -39,7 +39,7 @@ "\n", "import matplotlib.pyplot as plt\n", "\n", - "from rocketpy import Environment, Flight, Function, Rocket\n", + "from rocketpy import Environment, Flight, Function, HemisphericalParachute, Rocket\n", "from rocketpy.motors import CylindricalTank, Fluid, HybridMotor\n", "from rocketpy.motors.tank import MassFlowRateBasedTank\n", "\n", @@ -416,17 +416,18 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "Main = HALCYON.add_parachute(\n", + "Main = HemisphericalParachute(\n", " name=\"Main\",\n", " cd_s=9.621,\n", " trigger=\"apogee\",\n", " sampling_rate=100,\n", " lag=5,\n", - ")" + ")\n", + "HALCYON.add_parachute(parachute=Main)" ] }, { diff --git a/docs/examples/index.rst b/docs/examples/index.rst index e2919563f..6cc4356f4 100644 --- a/docs/examples/index.rst +++ b/docs/examples/index.rst @@ -32,6 +32,7 @@ apogee of some rockets. "Lince (2023)": (3284.12, 3587), "Defiance (2024)": (9238.01, 9308.32), "Hedy (2025)": (5406.92, 5231.53), + "Valkyrie (2025)": (2247.84, 2098.02), } max_apogee = 10000 @@ -104,5 +105,6 @@ In the next sections you will find the simulations of the rockets listed above. lince_flight_sim.ipynb defiance_flight_sim.ipynb hedy_flight_sim.ipynb + valkyrie_flight_sim.ipynb diff --git a/docs/examples/juno3_flight_sim.ipynb b/docs/examples/juno3_flight_sim.ipynb index c733e759d..788b7348f 100644 --- a/docs/examples/juno3_flight_sim.ipynb +++ b/docs/examples/juno3_flight_sim.ipynb @@ -33,13 +33,20 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "\n", - "from rocketpy import Environment, Flight, Function, Rocket, SolidMotor\n", + "from rocketpy import (\n", + " Environment,\n", + " Flight,\n", + " Function,\n", + " HemisphericalParachute,\n", + " Rocket,\n", + " SolidMotor,\n", + ")\n", "from rocketpy.simulation.flight_data_importer import FlightDataImporter\n", "\n", "plt.style.use(\"seaborn-v0_8-colorblind\")" @@ -333,18 +340,19 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "drogue = juno.add_parachute(\n", + "drogue = HemisphericalParachute(\n", " \"Drogue\",\n", " cd_s=0.885,\n", " trigger=\"apogee\",\n", " sampling_rate=105,\n", " noise=(0, 8.3, 0.5),\n", " lag=0.5,\n", - ")" + ")\n", + "juno.add_parachute(parachute=drogue)" ] }, { diff --git a/docs/examples/lince_flight_sim.ipynb b/docs/examples/lince_flight_sim.ipynb index 39685bbf1..e2db12ba1 100644 --- a/docs/examples/lince_flight_sim.ipynb +++ b/docs/examples/lince_flight_sim.ipynb @@ -37,7 +37,14 @@ "source": [ "import matplotlib.pyplot as plt\n", "\n", - "from rocketpy import Environment, Flight, Function, Rocket, SolidMotor\n", + "from rocketpy import (\n", + " Environment,\n", + " Flight,\n", + " Function,\n", + " HemisphericalParachute,\n", + " Rocket,\n", + " SolidMotor,\n", + ")\n", "\n", "plt.style.use(\"seaborn-v0_8-colorblind\")" ] @@ -258,13 +265,14 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "Main = LincePreDeploy.add_parachute(\n", + "Main = HemisphericalParachute(\n", " \"Main\", cd_s=3.9, trigger=\"apogee\", sampling_rate=150, lag=0, noise=(0, 0, 0)\n", - ")" + ")\n", + "LincePreDeploy.add_parachute(parachute=Main)" ] }, { @@ -321,13 +329,14 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "Main_stage_1 = LincePostDeploy.add_parachute(\n", + "Main_stage_1 = HemisphericalParachute(\n", " \"Main\", cd_s=3.9, trigger=\"apogee\", sampling_rate=150, lag=0, noise=(0, 0, 0)\n", - ")" + ")\n", + "LincePostDeploy.add_parachute(parachute=Main_stage_1)" ] }, { @@ -389,13 +398,14 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "Main_stage_2 = Payload.add_parachute(\n", + "Main_stage_2 = HemisphericalParachute(\n", " \"Main\", cd_s=0.159248, trigger=\"apogee\", sampling_rate=150, lag=0, noise=(0, 0, 0)\n", - ")" + ")\n", + "Payload.add_parachute(parachute=Main_stage_2)" ] }, { diff --git a/docs/examples/ndrt_2020_flight_sim.ipynb b/docs/examples/ndrt_2020_flight_sim.ipynb index 2028824c9..84faa0831 100644 --- a/docs/examples/ndrt_2020_flight_sim.ipynb +++ b/docs/examples/ndrt_2020_flight_sim.ipynb @@ -29,7 +29,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -38,7 +38,14 @@ "import numpy as np\n", "from scipy.signal import savgol_filter\n", "\n", - "from rocketpy import Environment, Flight, Function, Rocket, SolidMotor" + "from rocketpy import (\n", + " Environment,\n", + " Flight,\n", + " Function,\n", + " HemisphericalParachute,\n", + " Rocket,\n", + " SolidMotor,\n", + ")" ] }, { @@ -367,11 +374,11 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "drogue = ndrt2020.add_parachute(\n", + "drogue = HemisphericalParachute(\n", " \"Drogue\",\n", " cd_s=parameters.get(\"cd_s_drogue\")[0],\n", " trigger=\"apogee\",\n", @@ -379,14 +386,17 @@ " lag=parameters.get(\"lag_rec\")[0],\n", " noise=(0, 8.3, 0.5),\n", ")\n", - "main = ndrt2020.add_parachute(\n", + "main = HemisphericalParachute(\n", " \"Main\",\n", " cd_s=parameters.get(\"cd_s_main\")[0],\n", " trigger=167.64,\n", " sampling_rate=105,\n", " lag=parameters.get(\"lag_rec\")[0],\n", " noise=(0, 8.3, 0.5),\n", - ")" + ")\n", + "\n", + "ndrt2020.add_parachute(parachute=drogue)\n", + "ndrt2020.add_parachute(parachute=main)" ] }, { diff --git a/docs/examples/prometheus_2022_flight_sim.ipynb b/docs/examples/prometheus_2022_flight_sim.ipynb index 9e4a157a2..22c53eba1 100644 --- a/docs/examples/prometheus_2022_flight_sim.ipynb +++ b/docs/examples/prometheus_2022_flight_sim.ipynb @@ -36,14 +36,21 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", - "from rocketpy import Environment, Flight, Function, GenericMotor, Rocket\n", + "from rocketpy import (\n", + " Environment,\n", + " Flight,\n", + " Function,\n", + " GenericMotor,\n", + " HemisphericalParachute,\n", + " Rocket,\n", + ")\n", "from rocketpy.simulation.flight_data_importer import FlightDataImporter\n", "\n", "plt.style.use(\"seaborn-v0_8-colorblind\")" @@ -217,7 +224,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -275,16 +282,19 @@ " position=0.273,\n", " sweep_length=0.066,\n", ")\n", - "drogue = prometheus.add_parachute(\n", + "drogue = HemisphericalParachute(\n", " \"Drogue\",\n", " cd_s=1.6 * np.pi * 0.3048**2, # Cd = 1.6, D_chute = 24 in\n", " trigger=\"apogee\",\n", ")\n", - "main = prometheus.add_parachute(\n", + "main = HemisphericalParachute(\n", " \"Main\",\n", " cd_s=2.2 * np.pi * 0.9144**2, # Cd = 2.2, D_chute = 72 in\n", " trigger=457.2, # 1500 ft\n", - ")" + ")\n", + "\n", + "prometheus.add_parachute(parachute=drogue)\n", + "prometheus.add_parachute(parachute=main)" ] }, { diff --git a/docs/examples/valetudo_flight_sim.ipynb b/docs/examples/valetudo_flight_sim.ipynb index dd0a33c9c..53f53a89e 100644 --- a/docs/examples/valetudo_flight_sim.ipynb +++ b/docs/examples/valetudo_flight_sim.ipynb @@ -30,14 +30,14 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Importing libraries\n", "import matplotlib.pyplot as plt\n", "\n", - "from rocketpy import Environment, Flight, Rocket, SolidMotor" + "from rocketpy import Environment, Flight, HemisphericalParachute, Rocket, SolidMotor" ] }, { @@ -383,18 +383,19 @@ }, { "cell_type": "code", - "execution_count": 40, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "drogue = valetudo.add_parachute(\n", + "drogue = HemisphericalParachute(\n", " \"Drogue\",\n", " cd_s=parameters.get(\"cd_s_drogue\")[0],\n", " trigger=\"apogee\",\n", " sampling_rate=105,\n", " lag=parameters.get(\"lag_rec\")[0],\n", " noise=(0, 8.3, 0.5),\n", - ")" + ")\n", + "valetudo.add_parachute(parachute=drogue)" ] }, { diff --git a/docs/examples/valkyrie_flight_sim.ipynb b/docs/examples/valkyrie_flight_sim.ipynb new file mode 100644 index 000000000..5bb47894e --- /dev/null +++ b/docs/examples/valkyrie_flight_sim.ipynb @@ -0,0 +1,565 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "94a916eb", + "metadata": {}, + "source": [ + "# Valkyrie - Bisky Team - 2025\n", + "\n", + "Valkyrie has been an essential rocket to validate key technologies in recovery and avionics. It marked a significant step forward towards more efficient, precise, and safe rockets.\n", + "\n", + "Permission to use flight data given by Iñigo Martínez, 2026\n", + "\n", + "* Launch date: `July 26th, 2025`\n", + "\n", + "* Simulated Apogee: 2247.84 m\n", + "\n", + "* Recorded Apogee: 2098.02 m\n", + "\n", + "* Relative Error: `6.66%` " + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "id": "17ea162f", + "metadata": {}, + "outputs": [], + "source": [ + "%load_ext autoreload\n", + "%autoreload 2" + ] + }, + { + "cell_type": "markdown", + "id": "a4df1b07", + "metadata": {}, + "source": [ + "## Imports" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f0ed041a", + "metadata": {}, + "outputs": [], + "source": [ + "import json\n", + "\n", + "import matplotlib.pyplot as plt\n", + "\n", + "from rocketpy import Environment, Flight, Function, Rocket, SolidMotor\n", + "from rocketpy.simulation.flight_data_importer import FlightDataImporter\n", + "\n", + "plt.style.use(\"seaborn-v0_8-colorblind\")\n", + "\n", + "with open(\"../../data/rockets/valkyrie/VLK.json\", \"r\", encoding=\"utf-8\") as f:\n", + " rocket_data = json.load(f)[\"VLK\"]\n", + "\n", + "with open(\"../../data/rockets/valkyrie/Dima.json\", \"r\", encoding=\"utf-8\") as f:\n", + " launch_data = json.load(f)" + ] + }, + { + "cell_type": "markdown", + "id": "a8893b9b", + "metadata": {}, + "source": [ + "## Environment" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "2be900a9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Gravity Details\n", + "\n", + "Acceleration of gravity at surface level: 9.8026 m/s²\n", + "Acceleration of gravity at 3.000 km (ASL): 9.7952 m/s²\n", + "\n", + "\n", + "Launch Site Details\n", + "\n", + "Launch Date: 2026-07-26 10:00:00 UTC | 2026-07-26 12:00:00 Europe/Madrid\n", + "Launch Site Latitude: 43.07777°\n", + "Launch Site Longitude: -2.68445°\n", + "Reference Datum: SIRGAS2000\n", + "Launch Site UTM coordinates: 37203.68 W 4785157.78 N\n", + "Launch Site UTM zone: 31T\n", + "Launch Site Surface Elevation: 605.0 m\n", + "\n", + "\n", + "Atmospheric Model Details\n", + "\n", + "Atmospheric Model Type: windy\n", + "windy Maximum Height: 3.000 km\n", + "\n", + "Surface Atmospheric Conditions\n", + "\n", + "Surface Wind Speed: 1.20 m/s\n", + "Surface Wind Direction: 129.36°\n", + "Surface Wind Heading: 309.36°\n", + "Surface Pressure: 946.36 hPa\n", + "Surface Temperature: 297.58 K\n", + "Surface Air Density: 1.108 kg/m³\n", + "Surface Speed of Sound: 345.82 m/s\n", + "\n", + "\n", + "Earth Model Details\n", + "\n", + "Earth Radius at Launch site: 6368.21 km\n", + "Semi-major Axis: 6378.14 km\n", + "Semi-minor Axis: 6356.75 km\n", + "Flattening: 0.0034\n", + "\n", + "\n", + "Atmospheric Model Plots\n", + "\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "env_cfg = launch_data[\"Environment\"]\n", + "\n", + "env = Environment(\n", + " date=[2026, 7, 26, 12],\n", + " latitude=env_cfg[\"latitude\"][\"value\"],\n", + " longitude=env_cfg[\"longitude\"][\"value\"],\n", + " elevation=env_cfg[\"elevation\"][\"value\"],\n", + " timezone=env_cfg[\"timezone\"],\n", + ")\n", + "\n", + "env.set_atmospheric_model(type=\"windy\", file=\"ICON\")\n", + "env.max_expected_height = env_cfg[\"max_expected_height\"][\"value\"]\n", + "env.info()" + ] + }, + { + "cell_type": "markdown", + "id": "29b84c37", + "metadata": {}, + "source": [ + "## Motor" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "95eb3add", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nozzle Details\n", + "Nozzle Radius: 0.045 m\n", + "Nozzle Throat Radius: 0.023 m\n", + "\n", + "Grain Details\n", + "Number of Grains: 5\n", + "Grain Spacing: 0.001 m\n", + "Grain Density: 1170 kg/m3\n", + "Grain Outer Radius: 0.025 m\n", + "Grain Inner Radius: 0.01 m\n", + "Grain Height: 0.0966 m\n", + "Grain Volume: 0.000 m3\n", + "Grain Mass: 0.186 kg\n", + "\n", + "Motor Details\n", + "Total Burning Time: 3.5 s\n", + "Total Propellant Mass: 0.932 kg\n", + "Structural Mass Ratio: 0.409\n", + "Average Propellant Exhaust Velocity: 2142.979 m/s\n", + "Average Thrust: 570.679 N\n", + "Maximum Thrust: 1353.5 N at 0.011 s after ignition.\n", + "Total Impulse: 1997.377 Ns\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\emide\\anaconda3\\envs\\bisky_main\\Lib\\site-packages\\rocketpy\\motors\\motor.py:990: UserWarning: burn_time argument (0, 3.5) is out of thrust source time range. Using thrust_source boundary times instead: (0, 3.451) s.\n", + "If you want to change the burn out time of the curve please use the 'reshape_thrust_curve' argument.\n", + " warnings.warn(\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "motor_cfg = rocket_data[\"motor\"]\n", + "\n", + "motor = SolidMotor(\n", + " thrust_source=\"../../data/motors/cesaroni/Cesaroni_1997K650-21A.eng\",\n", + " burn_time=motor_cfg[\"motor_burn_time\"][\"value\"],\n", + " grain_number=int(motor_cfg[\"grain_number\"][\"value\"]),\n", + " grain_density=motor_cfg[\"grain_density\"][\"value\"],\n", + " grain_initial_inner_radius=motor_cfg[\"grain_initial_inner_radius\"][\"value\"],\n", + " grain_outer_radius=motor_cfg[\"grain_outer_radius\"][\"value\"],\n", + " grain_initial_height=motor_cfg[\"grain_initial_height\"][\"value\"],\n", + " grain_separation=motor_cfg[\"grain_separation\"][\"value\"],\n", + " grains_center_of_mass_position=motor_cfg[\"grains_center_of_mass_position\"][\"value\"],\n", + " nozzle_radius=motor_cfg[\"nozzle_radius\"][\"value\"],\n", + " throat_radius=motor_cfg[\"throat_radius\"][\"value\"],\n", + " dry_mass=motor_cfg[\"motor_dry_mass\"][\"value\"],\n", + " dry_inertia=(\n", + " motor_cfg[\"motor_inertia_11\"][\"value\"],\n", + " motor_cfg[\"motor_inertia_11\"][\"value\"],\n", + " motor_cfg[\"motor_inertia_33\"][\"value\"],\n", + " ),\n", + " center_of_dry_mass_position=motor_cfg[\"motor_dry_mass_position\"][\"value\"],\n", + " nozzle_position=motor_cfg[\"nozzle_position\"][\"value\"],\n", + " coordinate_system_orientation=motor_cfg[\"motor_coordinate_system_orientation\"],\n", + ")\n", + "\n", + "motor.info()" + ] + }, + { + "cell_type": "markdown", + "id": "2e07459a", + "metadata": {}, + "source": [ + "## Rocket and Aerodynamic surfaces" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "065222ad", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Inertia Details\n", + "\n", + "Rocket Mass: 5.650 kg (without motor)\n", + "Rocket Dry Mass: 6.295 kg (with unloaded motor)\n", + "Rocket Loaded Mass: 7.227 kg\n", + "Rocket Structural Mass Ratio: 0.871\n", + "Rocket Inertia (with unloaded motor) 11: 2.047 kg*m2\n", + "Rocket Inertia (with unloaded motor) 22: 2.047 kg*m2\n", + "Rocket Inertia (with unloaded motor) 33: 0.019 kg*m2\n", + "Rocket Inertia (with unloaded motor) 12: 0.000 kg*m2\n", + "Rocket Inertia (with unloaded motor) 13: 0.000 kg*m2\n", + "Rocket Inertia (with unloaded motor) 23: 0.000 kg*m2\n", + "\n", + "Geometrical Parameters\n", + "\n", + "Rocket Maximum Radius: 0.055 m\n", + "Rocket Frontal Area: 0.009503 m2\n", + "\n", + "Rocket Distances\n", + "Rocket Center of Dry Mass - Center of Mass without Motor: 0.061 m\n", + "Rocket Center of Dry Mass - Nozzle Exit: 0.783 m\n", + "Rocket Center of Dry Mass - Center of Propellant Mass: 0.537 m\n", + "Rocket Center of Mass - Rocket Loaded Center of Mass: 0.069 m\n", + "\n", + "\n", + "Aerodynamics Lift Coefficient Derivatives\n", + "\n", + "Nose Cone Lift Coefficient Derivative: 2.000/rad\n", + "Fins Lift Coefficient Derivative: 4.927/rad\n", + "Tail Lift Coefficient Derivative: -1.405/rad\n", + "\n", + "Center of Pressure\n", + "\n", + "Nose Cone Center of Pressure position: 1.773 m\n", + "Fins Center of Pressure position: 0.061 m\n", + "Tail Center of Pressure position: -0.068 m\n", + "\n", + "Stability\n", + "\n", + "Center of Mass position (time=0): 0.714 m\n", + "Center of Pressure position (time=0): 0.714 m\n", + "Initial Static Margin (mach=0, time=0): -0.001 c\n", + "Final Static Margin (mach=0, time=burn_out): 0.628 c\n", + "Rocket Center of Mass (time=0) - Center of Pressure (mach=0): 0.000 m\n", + "\n", + "\n", + "Parachute Details\n", + "\n", + "Parachute Drogue with a cd_s of 0.2589 m2\n", + "Ejection signal trigger: At Apogee\n", + "Ejection system refresh rate: 105.000 Hz\n", + "Time between ejection signal is triggered and the parachute is fully opened: 1.7 s\n", + "\n", + "\n", + "Parachute Details\n", + "\n", + "Parachute Main with a cd_s of 5.7865 m2\n", + "Ejection signal trigger: main_trigger\n", + "Ejection system refresh rate: 105.000 Hz\n", + "Time between ejection signal is triggered and the parachute is fully opened: 1.7 s\n", + "\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAw0AAADDCAYAAADA6/25AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAXdlJREFUeJztnQeUU1XXhg9NilIVsIAK2BU7oigWFBUFKwqi2Asq+okfKIigYgF7w4IFRCk27IIFxYYKYsWC2BBQKUqTIlL817P9T75MSDLJTJI5ybzPWlkzSW5u7jnn5t7dd4UFCxb844QQQgghhBAiARUTvSGEEEIIIYQQUhqEEEIIIYQQxSJPgxBCCCGEECIpUhqEEEIIIYQQSZHSIIQQQgghhEiKlAYhhBBCCCFEUqQ0CCGEEEIIIZIipUEIIYQQQgiRFCkNQgghhBBCiKRIaRAiRUaNGuXq1asXedSvX99tv/327qyzznI//PBD1r/3008/zcj+brvtNvfyyy+nvH30mHlsvvnm7rDDDnNjxozJyPEUIsuXL3eDBg1y7733Xon38dtvv9k+pk6dus57vM5aCCGEELlCSoMQaTJ48GD36quvumeffdadffbZ7pVXXnFHHHGEW7RoUV7M5e233+7Gjh2b1meOOuooGzNjRen4888/3TnnnOOefvrprB1nPrNixQp30003lUppmDNnju0jntLQtWtXWw8hhBAiV1TO2TcJUSDgXdhtt93s//3228+tWbPGLL9Y708++WRXiDRo0MC1aNHC/t9rr71cy5Yt3S677OIeeeQR17Fjx5wL5NWqVXMVKlRw5ZXNNtvMHkIIIUSukKdBiFLiFYj58+cXeX3cuHHu0EMPNeGOkJ5jjz3WTZ48eZ3PT58+3TwW2267rdt4441d8+bN3fnnn+9WrlyZ1Ap90EEHuT333DMSGrVkyRLXr18/t+uuu7qGDRu6HXfc0fXp08ctW7Ys8jlCWng+evToSLhRhw4d0h5z48aN3UYbbbTOmFM5Bn8cl112mSkdKCOMe++9914n5MmHZr355puue/fubuutt7b59HPzzDPP2Bw3atTIjun44493X3zxRZF9zJgxw0LIdthhB/se5vmYY45Zx4Kfyr4uvPBCe+/HH390J554ov2/0047uSuvvDJyTDNnzrTjBDwFfp75LPBZ/mftGAtzdNJJJ7mvv/468j14KA4++GD7n3H7faCcJgpPWrt2rbvrrrtMoWOc22yzjZ1Hv/zyS5HtWO9WrVq5Tz75xDxkHAPn8B133GH7EEIIIeIhT4MQpeTnn3+2v82aNYu8RtjOueeea4L9gw8+aALl3XffbWE+zz33nAnI8OWXX5rghgCIcN20aVM3d+5cUzj+/vtvV7Vq1XW+D+GyU6dObtNNN7UQlQ033NBi6BEGf/31V9ejRw8TRKdNm+YGDhzovvnmGwulwjLP9gjMeEh69uxp+6tZs2baY0Y5WLhwoQm+nlSPwcMY3333Xde7d2+3/vrru4cffthCnipXruyOPvroIt930UUXmUB/33332fdUqVLFwqSuv/5616VLFxsL88UcH3nkke7111932223nX2WucIbdPXVV5tC8Mcff5jytnjx4sj+U90XrFq1yrY75ZRTTPh///333S233OJq1aplihDK0lNPPeVOOOEE24ZQIkDJ8gof692/f397jXl8/PHHXdu2bd1bb71lCsfOO+9sYXAoDP/9739t7MCaJ4Lthg8fbnPI9rNmzXI33HCDKSDsl/PEM2/ePHfeeefZ8XPMeMkGDBhgykbnzp3TPh+EEEIUPlIahEgTBNDVq1e7v/76y02aNMndeuutZrlt166dvY+19qqrrjLLNsJjxYr/OvQQCvfYYw8TXskNACzUlSpVcuPHj48IlYDAGQ+Ev9NOO82Ukfvvv9/CdOCBBx5wX331lQm43vNxwAEHuE022cSdfvrptn++H6s+x8N3+XCjVPjnn39szPzFko7AW716dRM4Pakeg2fBggXujTfesNAnPz/M47XXXruO0sB+yMXwzJ4926ztCMje+g4HHnigjQsL/9ChQ+07vvvuOxOe8Qx4or0rqe7Lg0KBooPy5Y/ts88+My8J84Gih6fFC/mx88wYeUSfTwj5vIbnBeUFBYQwOGjSpEmxa4W3CoUBj8qNN94YeR2vFfOKssW5Fj33TzzxhJ2PfqwoFyi7UhqEEELEQ+FJQqQJAh6CLiFHCPe1a9d2I0eONAs5IKRS+QYh1SsMsMEGG5iwOmXKFLOW85g4caIJn9EKQyKwRmM1x3I9bNiwiMIAeBAQMhESEe79o02bNmbd53tKA14AxowVHQEWBeChhx6KCMclOYb9998/ojAAyhMhXITvxAupiYZwJfbNfER/F3OC8O2/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P+yyyd9//+1uueUWt/vuu7tatWq5jTfe2O2///7ukUcecatWrcrY9wwYMMDtsccerix59NFH3XvvvefeeecdN2vWLFe7du11thk+fLgpFM2bN1/nvaeeesre22qrrVx5QiVXyxlLly51hYLGEiZalzDRuoRJIa1LeeXHH380BaFOnTru2muvdTvttJNVgvruu+9M4N50001dhw4d4n4WYRzhszjiCbWZVhiOOOII98UXX7irr77atWrVyhSHSZMmudtuu83tuuuu9giJVOcu0Zqh4LFWyVh//fXdvHnz3AcffOD22WefyOusa3msfCZPQzmjRo0arlDQWMJE6xImWpcwKaR1CYk1K1e6pbNn299sc9FFF1k33Q8//NCdcMIJbvvttzfr9HHHHedeeOEF1759+8i2CLl4H3gPReCGG26wUpfnnHOO23rrrV3NmjXdjjvu6O66666k4UkHH3ywu+SSS1zv3r2tr0WjRo3Mgh8Nz5s2bWqCLwIu2yeC73v33Xfdq6++6i644AJTEPjsSSed5N5//307Nt8MDG/ENttsY8eKV2LMmDGR/bz99ts2xjfffNOaFqJ4tG7d2n377bcR6z2KFcoJ2/HgNVi8eLHr1q2bKVmEDbVt29aaH8Z6KIYNG2bfz7g4nng888wzFvrHNngD8NREzx3PGS/fz/NEsK6dO3c2JcEze/ZsGyevx3oNWVe8TCiQe++9t3vjjTeKbHPffffZ+eG9UZ06dYq8xzwy78xrw4YN3WGHHeaWLVvmQkKehnIGmnWhoLGEidYlTLQuYVJI6xIKcydNchN79HCrly1zlddf3+17++2uYZa6bv/xxx/u9ddfd9ddd50JqKmUkEX4ZXuEb5pp0VQLoX/UqFHWaAur9vnnn+822WQTU0IS8dhjj5kiMHHiRFNYzjrrLPMQHHLIISaA3nnnnW7kyJFuhx12sPApBPVE8N0Iz7vttts673nhHvr37++ee+45N3jwYBPGEbxPO+00V79+fQtl8vTr18/dfPPNNp4LL7zQlCJCgcgj+Oqrr9xrr73mXnnlFdsW5Qnh/6ijjjJlAUWL1x588EETnL/++utIsz8E86effto98cQTCRuRffzxx6bscKzMH/OJYsc+OFZCi6644go7Dv6nT0EyzjjjDNemTRtTNFDyCW3iuFDWYr2Ghx9+uLvmmmtctWrVbH2O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S7pjCfn3ku5YQv69pDuWkH8vQggRD/VpEEIIIYQQQiRFOQ1CCCGEEEKIpEhpEEIIIYQQQiRFSoMQQgghhBAiKVIahBBCCCGEEEmR0iCEEEIIIYRIipQGIYQQQgghRFKkNAghhBBCCCGSIqVBCCGEEEIIkRQpDUKIrDBz5kxXr149N3Xq1KTbdejQwfXp0ycnq3D99de7Sy65pFT7+Prrr92OO+7oli1blrHjEkIIIUJHHaGFKMdceOGFbvTo0fZ/5cqV3Wabbebat2/vevfu7dZff/1S7XvNmjXu999/dxtuuKHt+7333nNHHXWU++mnn1zt2rUj2y1cuNDer1mzpssm8+bNc3vuuacdx+abb16qfZ166qlu5513dj179szY8QkhhBAhI0+DEOWcgw8+2H3zzTfuk08+cX379nVDhw51/fv3L/V+K1Wq5Bo2bGgKQTLq1q2bdYUBRowY4Vq0aFFqhQG6dOnihg0bZoqREEIIUR6Q0iBEOadq1aom3Ddq1Mh17NjRHmPHjrX3Vq5caV6HbbbZxm2yySauXbt2plx4Fi1a5M4991y39dZbu0033dQs+SNHjlwnPIn/8TJAkyZN7HW8HPHCk9jn+eefb9vh+TjhhBPcDz/8EHl/1KhRbsstt3RvvPGGa9mypWvcuLEd85w5c5KO85lnnrHjj4bvvvzyy+37+b5tt93WPfLIIxZ6xPGhYOy+++7u9ddfL/K5Nm3auAULFriJEyeWYuaFEEKI/EFKgxCiCNWrV3erVq2y/6+66ir34osvunvuucdNmDDBNW3a1AR0QorghhtucN9++6178skn3YcffuhuueUWC0eKBeF/+PDh9v/kyZPNszFw4MC4M4+w/umnn5py8Oqrr7p//vnHderUKXJMsGLFCjd48GB3//33u5deesnNnj07qXcERYTv3HXXXdd5j/Asjnn8+PHunHPOsZCjM844w+211142ZhQElJjly5dHPrPeeutZXsMHH3ygs0cIIUS5QEqDECLCxx9/7J5++mm3//77m7WdEJxrrrnGtW3b1m233XbujjvuMKXiscces+0R1ps3b+522203s8ofeOCB7vDDD48bqkQYEtSvX988G7Vq1VpnOzwK48aNc3feeafbZ5993E477eQeeOAB99tvv7mXX345sh0KxG233Wbfu8suu5iw/8477yRcyVmzZpnysfHGG6/zHt+BotCsWTPXo0cPGx9KxGmnnWav9erVy7wKX331VZHP4VnBgyKEEEKUB5IHGwshCh6s+YT4rF692oTxI444wt14441uxowZ9pwQIE+VKlUsXGf69On2HIv86aef7r744gt30EEH2Wejt08X9ksOBGFOHkKZttpqq8h3Qo0aNSycyIMSMn/+/IT7xTMB1apVW+c9PAaxys32228fea1Bgwb2l6TuaNiX368QQghR6MjTIEQ5Z7/99nNvv/22hQ1h0X/00UfNG4BlHipUqFBke173r+GB+Pzzz123bt0sp+DYY491/fr1K/Gx+O+M93r0ccQmV/Neos+CD5kiTCmWePtCOYp+DmvXri2yHSFaG220UTEjEkIIIQoDKQ1ClHMorUquAt6GaGEZSz6x++QqePA8kG9AYrQHwZlqQkOGDLEcB5+7EIvfd7KKQyQi4/GYMmVK5DVCgwhbiv7OdGEsVGgi/yJTkCNBaJYQQghRHpDSIIRIqEwQfkQyNEnC06ZNs8ZohOR07drVtkFJoNLSjz/+aEI0oU6JhHuUEqz2bEOoz9KlS9fZhhwCQpz4HpSVL7/80p133nlWuYnXS3yhq1jRHXDAAUUUoNJALgNeGXI4hBBCiPKAlAYhREJQGChLSvUgchZQDkiUrlOnjr2PJ2LAgAGudevW1hSOnICHH3447r5IHKZ8K9vjUaDUaTyoikSVo86dO7vDDjvMwo6eeOKJIl6QkkBiM2VXY8OMSsKYMWNsPlCEhBBCiPKAOkILIcoFKB/kYKAAHX/88SXeD70rSNR+8MEH3d57753RYxRCCCFCRZ4GIUS5gNAoSsaSM1EaKN/63//+VwqDEEKIcoU8DUIIIYQQQoikyNMghBBCCCGESIqUBiGEEEIIIURSpDQIIYQQQgghkiKlQQghhBBCCJEUKQ1CCCGEEEKIpEhpEEIIIYQQQiRFSoMQQgghhBAiKVIahBBCCCGEEEmR0iCEEEIIIYRwyfg/C/OKVZNsD8UAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "rocket_cfg = rocket_data[\"rocket\"]\n", + "nose_cfg = rocket_data[\"nose\"]\n", + "fins_cfg = rocket_data[\"fins\"]\n", + "tail_cfg = rocket_data[\"tail\"]\n", + "rail_cfg = rocket_data[\"rail_buttons\"]\n", + "\n", + "vlk = Rocket(\n", + " radius=rocket_cfg[\"rocket_radius\"][\"value\"],\n", + " mass=rocket_cfg[\"rocket_mass\"][\"value\"],\n", + " inertia=(\n", + " rocket_cfg[\"rocket_inertia_11\"][\"value\"],\n", + " rocket_cfg[\"rocket_inertia_11\"][\"value\"],\n", + " rocket_cfg[\"rocket_inertia_33\"][\"value\"],\n", + " ),\n", + " center_of_mass_without_motor=rocket_cfg[\"rocket_center_of_mass_without_motor\"][\n", + " \"value\"\n", + " ],\n", + " power_off_drag=motor_cfg[\"power_off_drag\"][\"value\"],\n", + " power_on_drag=motor_cfg[\"power_on_drag\"][\"value\"],\n", + " coordinate_system_orientation=rocket_cfg[\"rocket_coordinate_system_orientation\"],\n", + ")\n", + "\n", + "vlk.set_rail_buttons(\n", + " rail_cfg[\"upper_button_position\"][\"value\"],\n", + " rail_cfg[\"lower_button_position\"][\"value\"],\n", + " rail_cfg[\"rail_angular_position\"][\"value\"],\n", + ")\n", + "\n", + "vlk.add_motor(motor, position=rocket_cfg[\"motor_position\"][\"value\"])\n", + "\n", + "vlk.add_nose(\n", + " length=nose_cfg[\"nose_length\"][\"value\"],\n", + " kind=nose_cfg[\"nose_kind\"],\n", + " position=nose_cfg[\"nose_position\"][\"value\"],\n", + ")\n", + "\n", + "vlk.add_trapezoidal_fins(\n", + " n=int(fins_cfg[\"fin_n\"][\"value\"]),\n", + " span=fins_cfg[\"fin_span\"][\"value\"],\n", + " root_chord=fins_cfg[\"fin_root_chord\"][\"value\"],\n", + " tip_chord=fins_cfg[\"fin_tip_chord\"][\"value\"],\n", + " sweep_length=fins_cfg[\"fin_sweep_length\"][\"value\"],\n", + " position=fins_cfg[\"fin_position\"][\"value\"],\n", + " cant_angle=fins_cfg[\"fin_cant_angle\"][\"value\"],\n", + ")\n", + "\n", + "vlk.add_tail(\n", + " top_radius=tail_cfg[\"top_radius\"][\"value\"],\n", + " bottom_radius=tail_cfg[\"bottom_radius\"][\"value\"],\n", + " length=tail_cfg[\"length\"][\"value\"],\n", + " position=tail_cfg[\"position\"][\"value\"],\n", + ")\n", + "\n", + "main_cfg = rocket_data[\"main_chute\"]\n", + "drogue_cfg = rocket_data[\"drogue_chute\"]\n", + "\n", + "\n", + "def main_trigger(p, h, y):\n", + " return y[5] < 0 and h < 500\n", + "\n", + "\n", + "vlk.add_parachute(\n", + " name=\"Drogue\",\n", + " cd_s=drogue_cfg[\"cd_s_drogue\"][\"value\"],\n", + " sampling_rate=drogue_cfg[\"drogue_sampling_rate\"][\"value\"],\n", + " lag=drogue_cfg[\"drogue_lag\"][\"value\"],\n", + " trigger=\"apogee\",\n", + " noise=tuple(drogue_cfg[\"drogue_noise\"]),\n", + ")\n", + "\n", + "vlk.add_parachute(\n", + " name=\"Main\",\n", + " cd_s=main_cfg[\"cd_s_main\"][\"value\"],\n", + " sampling_rate=main_cfg[\"main_sampling_rate\"][\"value\"],\n", + " lag=main_cfg[\"main_lag\"][\"value\"],\n", + " trigger=main_trigger,\n", + " noise=tuple(main_cfg[\"main_noise\"]),\n", + ")\n", + "\n", + "vlk.info()\n", + "vlk.draw()" + ] + }, + { + "cell_type": "markdown", + "id": "87c67151", + "metadata": {}, + "source": [ + "## Flight Simulation Data" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "6dd42298", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Apogee State\n", + "\n", + "Apogee Time: 20.884 s\n", + "Apogee Altitude: 2852.849 m (ASL) | 2247.849 m (AGL)\n", + "Apogee Freestream Speed: 6.868 m/s\n", + "Apogee X position: 148.646 m\n", + "Apogee Y position: 170.475 m\n", + "Apogee latitude: 43.0793048°\n", + "Apogee longitude: -2.6826150°\n" + ] + } + ], + "source": [ + "flight_cfg = launch_data[\"Flight\"]\n", + "launch_cfg = launch_data[\"launch\"]\n", + "\n", + "flight = Flight(\n", + " rocket=vlk,\n", + " environment=env,\n", + " rail_length=5,\n", + " inclination=87,\n", + " heading=30,\n", + " max_time=2000,\n", + ")\n", + "\n", + "flight.prints.apogee_conditions()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "bfd25766", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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ICJZEARBEARBECyISBYEQRAEQRAECyKSBUEQBEEQBMGCiGRBEARBEARBsCAiWRAEQRAEQRAsiEgWBEEQBEEQBAsikgVBEARBEATBgohkQRAEQRAEQbAgIlkQBEEQBEEQLIhIFgRBEARBEAQLIpIFQRAEQRAEwYKIZEEQBEEQBEGwICJZEARBEARBECyISBYEQRAEQRAECyKSBUEQBEEQBMGCiGRBEARBEARBsCAiWRAEQRAEQRAsiEgWBEEQBEEQBAsikgVBEARBEATBgohkQRAEQRAEQbAgIlkQBEEQBEEQLIhIFgRBEARBEAQLIpIFQRAEQRAEwYKIZEEQBEEQBEGwICJZEARBEARBECyISBYEQRAEQRAECyKSBUEQBEEQBMGCiGRBEARBEARBsCAiWRAEQRAEQRAsiEgWBEEQBEEQBAsikgVBEARBEATBgohkQRAEQRAEQbAgIlkQBEEQBEEQLIhIFgRBEARBEAQLIpIFQRAEQRAEwYKIZEEQBEEQBEGwICJZEARBEARBECyISBYEQRAEQRAECyKSBUEQBEEQBMGCiGRBEARBEARBsCAiWRAEQRAEQRAsiEgWBEEQBEEQBAsikgVBEARBEATBgohkQRAEQRAEQbAgIlkQBEEQBEEQLIhIFgRBEARBEAQLIpIFQRAEQRAEwYKIZEEQBEEQBEGwICJZEARBEARBECyISBYEQRAEQRAECyKSBUEQBEEQBMGCiGRBEARBEARBsCAiWRAEQRAEQRAsiEgWBEEQBEEQBAsikgVBEARBEATBgohkQRAEQRAEQbAgIlkQBEEQBEEQLIhIFgRBEARBEAQLIpIFQRAEQRAEwYKIZEEQBEEQBEGwICJZEARBEARBECyISBYEQRAEQRAECyKSBUEQBEEQBMGCiGRBEARBEARBsCAiWRAEQRAEQRAsiEgWBEEQBEEQBAsikgVBEARBEATBgohkQRAEQRAEQbAgIlkQBEEQBEEQLIhIFgRBEARBEAQLIpIFQRAEQRAEwYKIZEEQBEEQBEGwICJZEARBEARBECyISBYEQRAEQRAECyKSBUEQBEEQBMGCiGRBEARBEARBsCAiWRAEQRAEQRAsiEgWBEEQBEEQBAsikgVBEARBEATBgohkQRAEQRAEQbAgIlkQBEEQBEEQLIhIFgRBEARBEAQLIpIFQRAEQRAEwYKIZEEQBEEQ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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "flight.plots.trajectory_3d()" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "aa85c425", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The following attributes were create and are now available to be used: ['time', 'altitude']\n" + ] + }, + { + "data": { + "image/png": "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ZktwJEGSTE77x+FYVUQHf2eMbOWjSlhDV457RHqDARGp2etltvnBgwerSVer8uOPP6qgJzW1pJeQ1p49e9TkrfVRbb906VI1kSzpj6TMPDz95zEsPHBRPQ/2csAP49ur+bfINHOP7ujgr4rUHu2LTlN5RytOlPRcO3AxXZU3156Ct6M1RoSUBEdSi8RRs0mXGBARfvjhBzz55JP47rvvcP78eQQEBNToqnh5eRncnEDGONeRLqyNSMS9vxxQOSQywfq0fs0wc2gw7DheDV2uPeoc4KrKa0ODkZCRh1URCaqn2qoTiUjIzMfcPRdUkala+jXzUMGRBEnNPOv+jyyispjpZuKysrLw66+/4rHHHsPIkSNVLVBVzWf333+/mhxPamqkaEeCliazjz/+uHRbee3rr79W+5PJbmXS2x07duD06dPo16+fqk2SGe3PnDlT7jP+/vtvdOrUCba2tmjatClef/11FBYWln6GuOWWW9T+tc+v9T7t8Xz11Ve4+eab1We/9dZbtXwVTbMH2dRlxzDkm50qGGrp7YgdT/XC+yNbMRiiKnk72eDesEb49d4wJL0xFP8+2l0Nv9Dc0wEFRRqsPZmkahubv7serWZtwPN/H8fmM8koLCrmVaU6xxqiOiBdVLML86EL9pbWNUpeXbx4MYKDg1WZMGGCqil65ZVXrtiHzPwuQc+rr76KiIgItc7R0bHK/b755puYPXu2Ki+88ALuuusuFazIvGJSA/XAAw/giSeewMqVK9X2q1evVp//6aefquY7CZYefvhh9dprr72mmuW8vb0xd+5cDBs2DBYWFtV6n5Ysy0SvH330Uel76fqEx2fgrp/342BMunr+WI/GKnGa021QTacVGRDkqcrsm1vjZGJm6ThHW85eKu3W/8HGMyqJWxKyR7byxrCW3qpZjqi2MSCqAxIMOf78EnQhc8LbcLCq/hgv33//vQoohAQamZmZ+PfffzFo0KBy28ls8S4uJTOO+/qWDPt/NVKbNG7cOLUsAZHUCEmgNXToULXu6aefVttoyUSs06dPx8SJE9VzCZ4kqHr++edVMKNtlpPk7rKff633aUlAJkEY3Zh5ey7gsT8Oq3GFPB2s8f24dhh9eRoIohvRwssRz/aV0kx165fEbAmOJP9IphT55cBFVaRpVrryj7yceyQDRNbkj0CiqjAgMmFS07N7924s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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "columns_map = {\"time\": \"time\", \"altitude\": \"altitude\"}\n", + "\n", + "cots_altimeter_flight = FlightDataImporter(\n", + " name=\"Altimeter Data\",\n", + " paths=\"../../data/rockets/valkyrie/flightInfo_merged.csv\",\n", + " columns_map=columns_map,\n", + " units=None,\n", + " interpolation=\"linear\",\n", + " extrapolation=\"zero\",\n", + " delimiter=\",\",\n", + " encoding=\"utf-8\",\n", + ")\n", + "Function.compare_plots(\n", + " [\n", + " (flight.altitude, \"RocketPy\"),\n", + " (cots_altimeter_flight.altitude, \"Altimeter\"),\n", + " ],\n", + " title=\"Altitude Comparison\",\n", + " xlabel=\"Time (s)\",\n", + " ylabel=\"Altitude (m)\",\n", + " lower=0,\n", + " upper=40,\n", + ")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "bisky_main", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.14" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/notebooks/getting_started.ipynb b/docs/notebooks/getting_started.ipynb index a5adf46d2..66d5e0b8a 100644 --- a/docs/notebooks/getting_started.ipynb +++ b/docs/notebooks/getting_started.ipynb @@ -42,7 +42,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": { "colab": {}, "colab_type": "code", @@ -50,7 +50,7 @@ }, "outputs": [], "source": [ - "from rocketpy import Environment, Flight, Rocket, SolidMotor" + "from rocketpy import Environment, Flight, HemisphericalParachute, Rocket, SolidMotor" ] }, { @@ -721,7 +721,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": null, "metadata": { "colab": {}, "colab_type": "code", @@ -729,7 +729,7 @@ }, "outputs": [], "source": [ - "Main = calisto.add_parachute(\n", + "Main = HemisphericalParachute(\n", " \"Main\",\n", " cd_s=10.0,\n", " trigger=800,\n", @@ -738,14 +738,17 @@ " noise=(0, 8.3, 0.5),\n", ")\n", "\n", - "Drogue = calisto.add_parachute(\n", + "Drogue = HemisphericalParachute(\n", " \"Drogue\",\n", " cd_s=1.0,\n", " trigger=\"apogee\",\n", " sampling_rate=105,\n", " lag=1.5,\n", " noise=(0, 8.3, 0.5),\n", - ")" + ")\n", + "\n", + "calisto.add_parachute(parachute=Main)\n", + "calisto.add_parachute(parachute=Drogue)" ] }, { @@ -1246,24 +1249,10 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "File trajectory.kml saved with success!\n" - ] - } - ], - "source": [ - "test_flight.export_kml(\n", - " file_name=\"trajectory.kml\",\n", - " extrude=True,\n", - " altitude_mode=\"relative_to_ground\",\n", - ")" - ] + "outputs": [], + "source": "from rocketpy.simulation import FlightDataExporter\n\nFlightDataExporter(test_flight).export_kml(\n file_name=\"trajectory.kml\",\n extrude=True,\n altitude_mode=\"relative_to_ground\",\n)" }, { "attachments": {}, @@ -1568,6 +1557,9 @@ } ], "metadata": { + "nbsphinx": { + "orphan": true + }, "colab": { "name": "getting_started.ipynb", "provenance": [], @@ -1575,7 +1567,7 @@ }, "hide_input": false, "kernelspec": { - "display_name": ".venv12", + "display_name": "rocketpy_dev_venv (3.12.3)", "language": "python", "name": "python3" }, @@ -1589,9 +1581,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.4" + "version": "3.12.3" } }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/docs/notebooks/getting_started_colab.ipynb b/docs/notebooks/getting_started_colab.ipynb index ef0f7e711..783c72a3a 100644 --- a/docs/notebooks/getting_started_colab.ipynb +++ b/docs/notebooks/getting_started_colab.ipynb @@ -67,7 +67,7 @@ }, "outputs": [], "source": [ - "from rocketpy import Environment, Flight, Rocket, SolidMotor" + "from rocketpy import Environment, Flight, HemisphericalParachute, Rocket, SolidMotor" ] }, { @@ -485,7 +485,7 @@ }, "outputs": [], "source": [ - "Main = calisto.add_parachute(\n", + "Main = HemisphericalParachute(\n", " \"Main\",\n", " cd_s=10.0,\n", " trigger=800,\n", @@ -494,14 +494,17 @@ " noise=(0, 8.3, 0.5),\n", ")\n", "\n", - "Drogue = calisto.add_parachute(\n", + "Drogue = HemisphericalParachute(\n", " \"Drogue\",\n", " cd_s=1.0,\n", " trigger=\"apogee\",\n", " sampling_rate=105,\n", " lag=1.5,\n", " noise=(0, 8.3, 0.5),\n", - ")" + ")\n", + "\n", + "calisto.add_parachute(parachute=Main)\n", + "calisto.add_parachute(parachute=Drogue)" ] }, { @@ -588,13 +591,19 @@ "execution_count": null, "metadata": {}, "outputs": [], - "source": [ - "test_flight.export_kml(\n", - " file_name=\"trajectory.kml\",\n", - " extrude=True,\n", - " altitude_mode=\"relative_to_ground\",\n", - ")" - ] + "source": "from rocketpy.simulation import FlightDataExporter\n\nFlightDataExporter(test_flight).export_kml(\n file_name=\"trajectory.kml\",\n extrude=True,\n altitude_mode=\"relative_to_ground\",\n)" + }, + { + "cell_type": "markdown", + "source": "## 3D Flight Animation\n\nRocketPy can render an interactive 3D animation of the rocket's trajectory and attitude using [vedo](https://vedo.embl.es/). This feature requires the optional `animation` extra:\n\n```bash\npip install rocketpy[animation]\n```\n\n> **Note:** The interactive animation window opens in a desktop environment. It will not display inside Google Colab or other headless notebook servers — run it locally for the best experience.\n\nTwo animation modes are available:\n\n| Method | What it shows |\n|---|---|\n| `flight.plots.animate_trajectory()` | Rocket moves through 3D space following the simulated trajectory |\n| `flight.plots.animate_rotate()` | Rocket stays centred; only attitude (rotation) is animated |\n\nBoth methods accept an optional `file_name` argument pointing to a custom `.stl` model. When omitted, RocketPy uses a built-in default rocket shape.", + "metadata": {} + }, + { + "cell_type": "code", + "source": "# Install the optional animation dependency (skip if already installed)\n!pip install \"rocketpy[animation]\"\n\n# Animate the full trajectory — rocket moves through 3D space\n# Press Escape or close the window to exit the animation\ntest_flight.plots.animate_trajectory(\n start=0,\n stop=test_flight.t_final,\n time_step=0.05,\n)\n\n# Alternatively, animate only the attitude changes (rocket stays centred)\n# test_flight.plots.animate_rotate(\n# start=0,\n# stop=test_flight.t_final,\n# time_step=0.05,\n# )\n\n# To use your own 3D model, pass its path via file_name:\n# test_flight.plots.animate_trajectory(file_name=\"my_rocket.stl\")", + "metadata": {}, + "execution_count": null, + "outputs": [] }, { "attachments": {}, @@ -798,6 +807,9 @@ } ], "metadata": { + "nbsphinx": { + "orphan": true + }, "colab": { "name": "getting_started.ipynb", "provenance": [], @@ -824,4 +836,4 @@ }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/docs/notebooks/monte_carlo_analysis/monte_carlo_analysis.ipynb b/docs/notebooks/monte_carlo_analysis/monte_carlo_analysis.ipynb index 581266045..617a59be5 100644 --- a/docs/notebooks/monte_carlo_analysis/monte_carlo_analysis.ipynb +++ b/docs/notebooks/monte_carlo_analysis/monte_carlo_analysis.ipynb @@ -80,7 +80,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": { "id": "rNY7u8fApOP_" }, @@ -92,7 +92,7 @@ "from IPython.display import display\n", "from numpy.random import choice, normal\n", "\n", - "from rocketpy import Environment, Flight, Rocket, SolidMotor" + "from rocketpy import Environment, Flight, HemisphericalParachute, Rocket, SolidMotor" ] }, { @@ -369,7 +369,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -495,7 +495,7 @@ " airfoil=None,\n", " )\n", " # Add parachute\n", - " Drogue = Valetudo.add_parachute(\n", + " Drogue = HemisphericalParachute(\n", " \"Drogue\",\n", " cd_s=setting[\"cd_s_drogue\"],\n", " trigger=drogue_trigger,\n", @@ -503,6 +503,7 @@ " lag=setting[\"lag_rec\"] + setting[\"lag_se\"],\n", " noise=(0, 8.3, 0.5),\n", " )\n", + " Valetudo.add_parachute(parachute=Drogue)\n", "\n", " # Run trajectory simulation\n", " try:\n", diff --git a/docs/notebooks/monte_carlo_analysis/monte_carlo_class_usage.ipynb b/docs/notebooks/monte_carlo_analysis/monte_carlo_class_usage.ipynb index 2fb46fa86..11e5b6487 100644 --- a/docs/notebooks/monte_carlo_analysis/monte_carlo_class_usage.ipynb +++ b/docs/notebooks/monte_carlo_analysis/monte_carlo_class_usage.ipynb @@ -47,13 +47,21 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import datetime\n", "\n", - "from rocketpy import Environment, Flight, Function, MonteCarlo, Rocket, SolidMotor\n", + "from rocketpy import (\n", + " Environment,\n", + " Flight,\n", + " Function,\n", + " HemisphericalParachute,\n", + " MonteCarlo,\n", + " Rocket,\n", + " SolidMotor,\n", + ")\n", "from rocketpy.stochastic import (\n", " StochasticEnvironment,\n", " StochasticFlight,\n", @@ -107,7 +115,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": {}, "outputs": [ { @@ -180,7 +188,7 @@ "tail = rocket.add_tail(\n", " top_radius=0.0635, bottom_radius=0.0435, length=0.060, position=-1.194656\n", ")\n", - "Main = rocket.add_parachute(\n", + "Main = HemisphericalParachute(\n", " \"Main\",\n", " cd_s=10.0,\n", " trigger=800,\n", @@ -189,7 +197,7 @@ " noise=(0, 8.3, 0.5),\n", ")\n", "\n", - "Drogue = rocket.add_parachute(\n", + "Drogue = HemisphericalParachute(\n", " \"Drogue\",\n", " cd_s=1.0,\n", " trigger=\"apogee\",\n", @@ -197,6 +205,8 @@ " lag=1.5,\n", " noise=(0, 8.3, 0.5),\n", ")\n", + "rocket.add_parachute(parachute=Main)\n", + "rocket.add_parachute(parachute=Drogue)\n", "\n", "# Flight\n", "test_flight = Flight(\n", @@ -601,7 +611,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -612,8 +622,8 @@ "stochastic_rocket.set_rail_buttons(\n", " stochastic_rail_buttons, lower_button_position=(0.001, \"normal\")\n", ")\n", - "stochastic_rocket.add_parachute(stochastic_main)\n", - "stochastic_rocket.add_parachute(stochastic_drogue)" + "stochastic_rocket.add_parachute(parachute=stochastic_main)\n", + "stochastic_rocket.add_parachute(parachute=stochastic_drogue)" ] }, { @@ -800,6 +810,28 @@ ")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Alternatively, we can target an attribute using the method `MonteCarlo.simulate_convergence()` such that when the tolerance is met, the flight simulations would terminate early." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "test_dispersion.simulate_convergence(\n", + " target_attribute=\"apogee_time\",\n", + " target_confidence=0.95,\n", + " tolerance=0.5, # in seconds\n", + " max_simulations=1000,\n", + " batch_size=50,\n", + ")" + ] + }, { "attachments": {}, "cell_type": "markdown", diff --git a/docs/notebooks/monte_carlo_analysis/monte_carlo_sensitivity_simulation.py b/docs/notebooks/monte_carlo_analysis/monte_carlo_sensitivity_simulation.py index fc471ffad..4c965bd19 100644 --- a/docs/notebooks/monte_carlo_analysis/monte_carlo_sensitivity_simulation.py +++ b/docs/notebooks/monte_carlo_analysis/monte_carlo_sensitivity_simulation.py @@ -11,7 +11,14 @@ import datetime # %% -from rocketpy import Environment, Flight, MonteCarlo, Rocket, SolidMotor +from rocketpy import ( + Environment, + Flight, + HemisphericalParachute, + MonteCarlo, + Rocket, + SolidMotor, +) from rocketpy.stochastic import ( StochasticEnvironment, StochasticFlight, @@ -135,7 +142,7 @@ tail = rocket.add_tail( top_radius=0.0635, bottom_radius=0.0435, length=0.060, position=-1.194656 ) -Main = rocket.add_parachute( +Main = HemisphericalParachute( "Main", cd_s=analysis_parameters["parachutes_main_cd_s"]["mean"], lag=analysis_parameters["parachutes_main_lag"]["mean"], @@ -144,7 +151,7 @@ noise=(0, 8.3, 0.5), ) -Drogue = rocket.add_parachute( +Drogue = HemisphericalParachute( "Drogue", cd_s=analysis_parameters["parachutes_drogue_cd_s"]["mean"], lag=analysis_parameters["parachutes_drogue_lag"]["mean"], @@ -153,6 +160,9 @@ noise=(0, 8.3, 0.5), ) +rocket.add_parachute(parachute=Main) +rocket.add_parachute(parachute=Drogue) + # Flight test_flight = Flight( rocket=rocket, diff --git a/docs/reference/classes/Parachute.rst b/docs/reference/classes/Parachute.rst index f2ffb983d..88dd938e2 100644 --- a/docs/reference/classes/Parachute.rst +++ b/docs/reference/classes/Parachute.rst @@ -2,4 +2,10 @@ Parachute Class --------------- .. autoclass:: rocketpy.Parachute + :members: + +HemisphericalParachute Class +---------------------------- + +.. autoclass:: rocketpy.HemisphericalParachute :members: \ No newline at end of file diff --git a/docs/reference/classes/aero_surfaces/EllipticalFin.rst b/docs/reference/classes/aero_surfaces/EllipticalFin.rst new file mode 100644 index 000000000..3f1403e8e --- /dev/null +++ b/docs/reference/classes/aero_surfaces/EllipticalFin.rst @@ -0,0 +1,5 @@ +EllipticalFin Class +------------------- + +.. autoclass:: rocketpy.EllipticalFin + :members: \ No newline at end of file diff --git a/docs/reference/classes/aero_surfaces/Fin.rst b/docs/reference/classes/aero_surfaces/Fin.rst new file mode 100644 index 000000000..b9c70c25e --- /dev/null +++ b/docs/reference/classes/aero_surfaces/Fin.rst @@ -0,0 +1,5 @@ +Fin Class +--------- + +.. autoclass:: rocketpy.Fin + :members: \ No newline at end of file diff --git a/docs/reference/classes/aero_surfaces/FreeFormFin.rst b/docs/reference/classes/aero_surfaces/FreeFormFin.rst new file mode 100644 index 000000000..636be2c9e --- /dev/null +++ b/docs/reference/classes/aero_surfaces/FreeFormFin.rst @@ -0,0 +1,5 @@ +FreeFormFin Class +----------------- + +.. autoclass:: rocketpy.FreeFormFin + :members: \ No newline at end of file diff --git a/docs/reference/classes/aero_surfaces/FreeFormFins.rst b/docs/reference/classes/aero_surfaces/FreeFormFins.rst new file mode 100644 index 000000000..c641ce156 --- /dev/null +++ b/docs/reference/classes/aero_surfaces/FreeFormFins.rst @@ -0,0 +1,5 @@ +FreeFormFins Class +------------------ + +.. autoclass:: rocketpy.FreeFormFins + :members: \ No newline at end of file diff --git a/docs/reference/classes/aero_surfaces/TrapezoidalFin.rst b/docs/reference/classes/aero_surfaces/TrapezoidalFin.rst new file mode 100644 index 000000000..34fa631df --- /dev/null +++ b/docs/reference/classes/aero_surfaces/TrapezoidalFin.rst @@ -0,0 +1,5 @@ +TrapezoidalFin Class +-------------------- + +.. autoclass:: rocketpy.TrapezoidalFin + :members: \ No newline at end of file diff --git a/docs/reference/classes/aero_surfaces/_BaseFin.rst b/docs/reference/classes/aero_surfaces/_BaseFin.rst new file mode 100644 index 000000000..358668e1f --- /dev/null +++ b/docs/reference/classes/aero_surfaces/_BaseFin.rst @@ -0,0 +1,7 @@ +:orphan: + +_BaseFin Class +-------------- + +.. autoclass:: rocketpy.rocket.aero_surface.fins._base_fin._BaseFin + :members: \ No newline at end of file diff --git a/docs/reference/classes/aero_surfaces/index.rst b/docs/reference/classes/aero_surfaces/index.rst index c6e6a3efe..a3dad0417 100644 --- a/docs/reference/classes/aero_surfaces/index.rst +++ b/docs/reference/classes/aero_surfaces/index.rst @@ -11,7 +11,12 @@ AeroSurface Classes Fins TrapezoidalFins EllipticalFins + FreeFormFins + Fin + TrapezoidalFin + EllipticalFin + FreeFormFin RailButtons AirBrakes GenericSurface - LinearGenericSurface + LinearGenericSurface \ No newline at end of file diff --git a/docs/reference/classes/exceptions.rst b/docs/reference/classes/exceptions.rst new file mode 100644 index 000000000..f1dfe24b6 --- /dev/null +++ b/docs/reference/classes/exceptions.rst @@ -0,0 +1,14 @@ +Exceptions and Warnings +======================= + +RocketPy raises a small hierarchy of custom exceptions and warnings so that +error handling can be more specific than catching plain ``ValueError`` or +``UserWarning``. All exceptions inherit from :class:`~rocketpy.exceptions.RocketPyError`, +which makes it possible to catch any RocketPy-specific error with a single +``except`` clause while still deriving from the relevant built-in type +(e.g. :class:`~rocketpy.exceptions.InvalidParameterError` is also a +``ValueError``). + +.. automodule:: rocketpy.exceptions + :members: + :show-inheritance: diff --git a/docs/reference/classes/motors/RingClusterMotor.rst b/docs/reference/classes/motors/RingClusterMotor.rst new file mode 100644 index 000000000..5178216e1 --- /dev/null +++ b/docs/reference/classes/motors/RingClusterMotor.rst @@ -0,0 +1,5 @@ +RingClusterMotor Class +---------------------- + +.. autoclass:: rocketpy.RingClusterMotor + :members: diff --git a/docs/reference/classes/motors/index.rst b/docs/reference/classes/motors/index.rst index 3bd6e2d96..b98748afd 100644 --- a/docs/reference/classes/motors/index.rst +++ b/docs/reference/classes/motors/index.rst @@ -10,6 +10,7 @@ Motor Classes HybridMotor LiquidMotor GenericMotor + RingClusterMotor Fluid Tank Classes Tank Geometry Classes diff --git a/docs/reference/classes/utils/index.rst b/docs/reference/classes/utils/index.rst index 05fffd9e9..150f78d03 100644 --- a/docs/reference/classes/utils/index.rst +++ b/docs/reference/classes/utils/index.rst @@ -7,7 +7,8 @@ Utils functions tools units - utilities + utilities vector matrix - + logging + diff --git a/docs/reference/classes/utils/logging.rst b/docs/reference/classes/utils/logging.rst new file mode 100644 index 000000000..c2e933a76 --- /dev/null +++ b/docs/reference/classes/utils/logging.rst @@ -0,0 +1,4 @@ +Logging functions +----------------- + +.. autofunction:: rocketpy.utilities.enable_logging diff --git a/docs/reference/classes/utils/utilities.rst b/docs/reference/classes/utils/utilities.rst index 6376c2aad..b4bde76ca 100644 --- a/docs/reference/classes/utils/utilities.rst +++ b/docs/reference/classes/utils/utilities.rst @@ -11,4 +11,5 @@ At RocketPy projects, utilities are functions that: Below you have a list of all utilities functions available in rocketpy. .. automodule:: rocketpy.utilities - :members: \ No newline at end of file + :members: + :exclude-members: enable_logging \ No newline at end of file diff --git a/docs/reference/index.rst b/docs/reference/index.rst index de3b36ac8..48d54d989 100644 --- a/docs/reference/index.rst +++ b/docs/reference/index.rst @@ -18,9 +18,10 @@ This reference manual details functions, modules, methods and attributes include classes/Flight Utilities classes/EnvironmentAnalysis - Monte Carlo Analysis + Monte Carlo Analysis Sensitivity Analysis Multivariate Rejection Sampler + Exceptions and Warnings .. toctree:: :maxdepth: 2 diff --git a/docs/static/rocket/fin_forces.png b/docs/static/rocket/fin_forces.png new file mode 100644 index 000000000..41be9bfa2 Binary files /dev/null and b/docs/static/rocket/fin_forces.png differ diff --git a/docs/static/rocket/individual_fin_frame.png b/docs/static/rocket/individual_fin_frame.png new file mode 100644 index 000000000..67d417cdb Binary files /dev/null and b/docs/static/rocket/individual_fin_frame.png differ diff --git a/docs/technical/aerodynamics/individual_fins.rst b/docs/technical/aerodynamics/individual_fins.rst new file mode 100644 index 000000000..408352e16 --- /dev/null +++ b/docs/technical/aerodynamics/individual_fins.rst @@ -0,0 +1,498 @@ +.. _individual_fins: + +==================== +Individual Fin Model +==================== + +:Author: Mateus Stano Junqueira +:Date: March 2025 + +Introduction +============ + +There are currently three ways to model the aerodynamic effects of fins in RocketPy: + +1. By use of the :class:`rocketpy.GenericSurface` or :class:`rocketpy.LinearGenericSurface` classes, + which are defined by receiving the aerodynamic coefficients directly; +2. By use of the :class:`rocketpy.Fins` classes (:class:`rocketpy.TrapezoidalFins`, :class:`rocketpy.EllipticalFins`, :class:`rocketpy.FreeFormFins`), + which are defined by receiving the geometric parameters of the **fin set** and + calculating the aerodynamic coefficients internally with the Barrowman method; +3. By use of the :class:`rocketpy.Fin` classes (:class:`rocketpy.TrapezoidalFin`, :class:`rocketpy.EllipticalFin`, :class:`rocketpy.FreeFormFin`) + (which are the base classes for the fin set classes), which are defined by receiving the + geometric parameters of **one single fin** and calculating the aerodynamic + coefficients internally with the Barrowman method, with exception of the + moment coefficients, which have been derived in this document. + +This document will focus on all the mathematical derivations and implementations +of the :class:`rocketpy.Fin` classes. + +Fin Coordinate Frame +==================== + +The fin coordinate frame is defined as follows: + +- The origin is at the leading edge of the fin, at the intersection of the + fin's root chord and the fin's leading edge; +- The z-axis is aligned with the fin's root chord, pointing towards the fin's + trailing edge; +- The y-axis is aligned with the fin's span, pointing towards the fin's tip chord; +- The x-axis completes the right-handed coordinate system. + +The fin is postioned at the rocket's body, given a ``rocket_radius`` :math:`r`, +an ``angular_position`` :math:`\Gamma` and a position :math:`p` along the +rocket's body. The angular position is given according to +:ref:`Angular Position Inputs `. + + +The fin can also be rotated by a cant angle :math:`\delta`. + +The image below shows the fin coordinate frame: + +.. image:: ../../static/rocket/individual_fin_frame.png + :width: 800 + :align: center + +.. note:: + A positive cant angle :math:`\delta` produces a negative body axis rolling + moment at zero angle of attack. + +The rotation matrix from the fin coordinate frame to the rocket's body frame is +define by, first a rotation around the y-axis by 180 degrees: + +.. math:: + \mathbf{R}_{y(\pi)} = \begin{bmatrix} + -1 & 0 & 0 \\ + 0 & 1 & 0 \\ + 0 & 0 & -1 + \end{bmatrix} + +Then a rotation around the z-axis by the angle :math:`\Gamma`: + +.. math:: + \mathbf{R}_{z(\Gamma)} = \begin{bmatrix} + \cos(\Gamma) & -\sin(\Gamma) & 0 \\ + \sin(\Gamma) & \cos(\Gamma) & 0 \\ + 0 & 0 & 1 + \end{bmatrix} + +Then a rotation around the y-axis by the cant angle :math:`\delta`: + +.. math:: + \mathbf{R}_{y(\delta)} = \begin{bmatrix} + \cos(\delta) & 0 & \sin(\delta) \\ + 0 & 1 & 0 \\ + -\sin(\delta) & 0 & \cos(\delta) + \end{bmatrix} + +The final rotation matrix is given by: + +.. math:: + \mathbf{R} = \mathbf{R}_{y(\delta)} \cdot \mathbf{R}_{z(\Gamma)} \cdot \mathbf{R}_{y(\pi)} + + +The position of the fin's coordinate frame origin in the rocket's body frame +is calculated by first assuming no a fin frame with no cant angle, then +calculating the position of the fin's leading edge (with cant angle) in this +frame, and finally translating this position to the fin's position in the +rocket's body frame. The position of the fin's real leading edge in this no cant +angle fin frame is given by the point :math:`\mathbf{P}^{\delta}_{le_f}`: + +.. math:: + \mathbf{P}^{\delta}_{le_f} = \begin{bmatrix} + -\frac{Cr}{2} \sin(\delta) \\ + 0 \\ + \frac{Cr}{2} (1 - \cos(\delta)) + \end{bmatrix} + +Then, describing this point to the rocket's body frame orientation (no +translation): + +.. math:: + \mathbf{P}^{\delta}_{le_b} = (\mathbf{R}_{z(\Gamma)} \cdot \mathbf{R}_{y(\pi)}) \cdot \mathbf{P}^{\delta}_{le_f} + +The position of the fin's leading edge with no cant angle in the rocket's body +frame is given by: + +.. math:: + \mathbf{P}^{\overline{\delta}}_{le_b} = \begin{bmatrix} + -r \sin(\Gamma) \\ + r \cos(\Gamma) \\ + p + \end{bmatrix} + +Finally, we add the position of the fin's leading edge with no cant angle to the +position of the fin's leading edge with cant angle in the rocket's body frame: + +.. math:: + \mathbf{P}_{le_b} = \mathbf{P}^{\overline{\delta}}_{le_b} + \mathbf{P}^{\delta}_{le_b} + + +Center of Pressure Position +=========================== + +In the Fin Coordinate Frame, the center of pressure is given by the Barrowman +method, and will here only be defined symbolically: + +.. math:: + \mathbf{cp}_f = \begin{bmatrix} + cp_x \\ + cp_y \\ + cp_z + \end{bmatrix} + +The center of pressure position in the rocket's body frame is given by: + +.. math:: + \mathbf{cp}_{rocket} = \mathbf{R} \cdot \mathbf{cp}_f + \mathbf{P}_{le_b} + +Aerodynamic Forces +================== + +.. note:: + The aerodynamic coefficients are defined according the Barrowman method. + +Given a stream velocity in the fin frame :math:`\mathbf{v}_{0f} = [v_{0x}, v_{0y}, v_{0z}]^{T}`, +the effective angle of attack of the fin is given by: + +.. math:: + \alpha_f = \arctan\left(\frac{v_{0x}}{v_{0z}}\right) + +This can also be seen as the angle between the fin's root chord and the stream +velocity vector in the fin frame. + +The aerodynamic force in the x-direction of the fin is given by: + +.. math:: + F_{x} = \frac{1}{2} \cdot \rho \cdot \|\mathbf{v}_{0f}\|^2 \cdot A_{r} \cdot C_{N}(\alpha_f, Ma) + +Where :math:`A_{r}` is the reference area of the fin, and :math:`C_{N}` is the +normal force coefficient, which is a function of the angle of attack and the +Mach number :math:`Ma`. +This force is then transformed to the rocket's body frame by the rotation matrix: + +.. math:: + \begin{bmatrix} + F_{x} \\ + F_{y} \\ + F_{z} + \end{bmatrix}_{rocket} = \mathbf{R} \cdot \begin{bmatrix} + F_{x} \\ + 0 \\ + 0 + \end{bmatrix}_{fin} + +Then, the moments are calculated by the cross product of the center of pressure +and the aerodynamic force: + +.. math:: + \begin{bmatrix} + M_{x} \\ + M_{y} \\ + M_{z} + \end{bmatrix}_{rocket} = \mathbf{cp}_{rocket} \times \begin{bmatrix} + F_{x} \\ + F_{y} \\ + F_{z} + \end{bmatrix}_{rocket} + +From the Barrowman method, the moment along the center axis of the rocket +(:math:`M_{z}`) is still missing the damping term, which is given by: + +.. math:: + M_{damp} = \frac{1}{2} \cdot \rho \cdot \|v_{0}\| \cdot A_{r} \cdot L_{r}^2 \cdot C_{ld\omega}(Ma) \cdot \frac{1}{2} \cdot \omega_z + +.. math:: + M_{z \, \text{final}} = M_{z} + M_{damp} + +Where :math:`C_{ld}` is the roll moment damping coefficient, :math:`L_{r}` +is the reference length, which is equal to the rocket diameter, and +:math:`\omega_z` is the angular velocity of the rocket around the z-axis. + +Adding Individual Fins to the Rocket +==================================== +.. jupyter-execute:: + :hide-code: + :hide-output: + + from rocketpy import * + env = Environment(latitude=32.990254, longitude=-106.974998, elevation=1400) + Pro75M1670 = SolidMotor( + thrust_source="../data/motors/cesaroni/Cesaroni_M1670.eng", + dry_mass=1.815, + dry_inertia=(0.125, 0.125, 0.002), + nozzle_radius=33 / 1000, + grain_number=5, + grain_density=1815, + grain_outer_radius=33 / 1000, + grain_initial_inner_radius=15 / 1000, + grain_initial_height=120 / 1000, + grain_separation=5 / 1000, + grains_center_of_mass_position=0.397, + center_of_dry_mass_position=0.317, + nozzle_position=0, + burn_time=3.9, + throat_radius=11 / 1000, + coordinate_system_orientation="nozzle_to_combustion_chamber", + ) + # IMPORTANT: modify the file paths below to match your own system + + example_rocket = Rocket( + radius=127 / 2000, + mass=14.426, + inertia=(6.321, 6.321, 0.034), + power_off_drag="../data/rockets/calisto/powerOffDragCurve.csv", + power_on_drag="../data/rockets/calisto/powerOnDragCurve.csv", + center_of_mass_without_motor=0, + coordinate_system_orientation="tail_to_nose", + ) + + rail_buttons = example_rocket.set_rail_buttons( + upper_button_position=0.0818, + lower_button_position=-0.618, + angular_position=45, + ) + example_rocket.add_motor(Pro75M1670, position=-1.255) + nose_cone = example_rocket.add_nose(length=0.55829, kind="vonKarman", position=1.278) + tail = example_rocket.add_tail( + top_radius=0.0635, bottom_radius=0.0435, length=0.060, position=-1.194656 + ) + example_rocket.add_trapezoidal_fins( + n=4, + root_chord=0.120, + tip_chord=0.060, + span=0.110, + cant_angle=0.0, + position=-1.04956, + airfoil=("../data/airfoils/NACA0012-radians.txt", "radians"), + ) + +Given a defined ``Rocket`` object, we can add individual fins to the rocket by +using the ``add_surfaces`` method. Here is an example of adding two canards +in the Calisto rocket from the :ref:`First Simulation ` example: + +.. jupyter-execute:: + + canard1 = TrapezoidalFin( + angular_position=0, + root_chord=0.060, + tip_chord=0.020, + span=0.03, + rocket_radius=example_rocket.radius, + cant_angle=0.5, + airfoil=("../data/airfoils/NACA0012-radians.txt", "radians"), + ) + canard2 = TrapezoidalFin( + angular_position=180, + root_chord=0.060, + tip_chord=0.020, + span=0.03, + rocket_radius=example_rocket.radius, + cant_angle=0.5, + airfoil=("../data/airfoils/NACA0012-radians.txt", "radians"), + ) + + # Position along the center axis of the rocket is specified here. + # If different positions are desired, the position can be specified as a list. + example_rocket.add_surfaces([canard1, canard2], positions = 0.35) + + example_rocket.draw(plane="yz") + +.. seealso:: + + There are three classes for defining fins in RocketPy given their geometry: + + - :class:`rocketpy.TrapezoidalFin` - For how to define a trapezoidal fin + - :class:`rocketpy.EllipticalFin` - For how to define an elliptical fin + - :class:`rocketpy.FreeFormFin` - For how to define a free form fin + + + +Fin Force Conventions +===================== + +.. - Explain positive cant angle resultant force +.. - if all fins have positive cant angle then they will all generate a force that will rotate the rocket in the same direction +.. which is negative roll +.. - show what a positive and negative cant angle on oposing fins looks like. (generate pitch moment -> pitch control) +.. - show what a positive and negative cant angle on oposing fins looks like. (generate yaw moment -> yaw control) +.. - example for 4 fins, show how to count the number of fins and how to access each of them + + + +Here we exemplify the fin force conventions relating the cant angle +(deflection angle) of the fins to the pitch, yaw and roll moments. We will +consider a rocket with four fins, to illustrate the concepts. The image below +show the sign convention for the forces acting on the fins, given positive cant +angles: + +.. image:: ../../static/rocket/fin_forces.png + :width: 800 + :align: center + + +Roll +^^^^ + +.. jupyter-execute:: + :hide-code: + :hide-output: + + example_rocket.aerodynamic_surfaces.pop() + example_rocket.aerodynamic_surfaces.pop() + + +A positive cant angle :math:`\delta` produces a negative roll moment at zero +angle of attack. Any fin with a positive cant angle will produce a negative roll +moment, and any fin with a negative cant angle will produce a positive roll +moment. + +Here is a flight of the calisto with canards defined with a positive cant angle: + +.. jupyter-execute:: + + + canard1 = TrapezoidalFin( + angular_position=0, + root_chord=0.060, + tip_chord=0.020, + span=0.03, + rocket_radius=example_rocket.radius, + cant_angle=0.5, + airfoil=("../data/airfoils/NACA0012-radians.txt", "radians"), + ) + canard2 = TrapezoidalFin( + angular_position=180, + root_chord=0.060, + tip_chord=0.020, + span=0.03, + rocket_radius=example_rocket.radius, + cant_angle=0.5, + airfoil=("../data/airfoils/NACA0012-radians.txt", "radians"), + ) + + example_rocket.add_surfaces([canard1, canard2], positions = 0.35) + + test_flight = Flight( + rocket=example_rocket, + environment=env, rail_length=5.2, inclination=85, heading=0, + terminate_on_apogee=True, + ) + + # Rolling Moment + test_flight.M3() + + # Rolling Speed + test_flight.w3() + + # Angle of attack + test_flight.partial_angle_of_attack.plot(test_flight.out_of_rail_time, 5) + + # Angle of sideslip + test_flight.angle_of_sideslip.plot(test_flight.out_of_rail_time, 5) + +Pitch +^^^^^ + +.. jupyter-execute:: + :hide-code: + :hide-output: + + example_rocket.aerodynamic_surfaces.pop() + example_rocket.aerodynamic_surfaces.pop() + +Given canards fins at 90 degrees and 270 degrees, having opposite cant angles, +a positive pitch moment will be generated. The following example shows the +effect of this configuration in the non-zero angle of attack flight of the +rocket: + +.. jupyter-execute:: + + + canard1 = TrapezoidalFin( + angular_position=90, + root_chord=0.060, + tip_chord=0.020, + span=0.03, + rocket_radius=example_rocket.radius, + cant_angle=0.5, + airfoil=("../data/airfoils/NACA0012-radians.txt", "radians"), + ) + canard2 = TrapezoidalFin( + angular_position=270, + root_chord=0.060, + tip_chord=0.020, + span=0.03, + rocket_radius=example_rocket.radius, + cant_angle=-0.5, + airfoil=("../data/airfoils/NACA0012-radians.txt", "radians"), + ) + + example_rocket.add_surfaces([canard1, canard2], positions = 0.35) + + test_flight = Flight( + rocket=example_rocket, + environment=env, rail_length=5.2, inclination=85, heading=0, + terminate_on_apogee=True, + ) + + # Angle of attack + test_flight.partial_angle_of_attack.plot(test_flight.out_of_rail_time, 5) + + # Angle of sideslip + test_flight.angle_of_sideslip.plot(test_flight.out_of_rail_time, 5) + +Yaw +^^^ + +.. jupyter-execute:: + :hide-code: + :hide-output: + + example_rocket.aerodynamic_surfaces.pop() + example_rocket.aerodynamic_surfaces.pop() + +Given opposing canards at 0 degrees and 180 degrees, having opposite cant angles, +a positive yaw moment will be generated. The following example shows the +effect of this configuration in the non-zero angle of attack flight of the +rocket: + +.. jupyter-execute:: + + + canard1 = TrapezoidalFin( + angular_position=0, + root_chord=0.060, + tip_chord=0.020, + span=0.03, + rocket_radius=example_rocket.radius, + cant_angle=0.5, + airfoil=("../data/airfoils/NACA0012-radians.txt", "radians"), + ) + canard2 = TrapezoidalFin( + angular_position=180, + root_chord=0.060, + tip_chord=0.020, + span=0.03, + rocket_radius=example_rocket.radius, + cant_angle=-0.5, + airfoil=("../data/airfoils/NACA0012-radians.txt", "radians"), + ) + + example_rocket.add_surfaces([canard1, canard2], positions = 0.35) + + test_flight = Flight( + rocket=example_rocket, + environment=env, rail_length=5.2, inclination=85, heading=0, + terminate_on_apogee=True, + ) + + # Angle of attack + test_flight.partial_angle_of_attack.plot(test_flight.out_of_rail_time, 5) + + # Angle of sideslip + test_flight.angle_of_sideslip.plot(test_flight.out_of_rail_time, 5) + + + + + diff --git a/docs/technical/index.rst b/docs/technical/index.rst index b96e611ed..73583eba9 100644 --- a/docs/technical/index.rst +++ b/docs/technical/index.rst @@ -13,6 +13,7 @@ in their code. Equations of Motion v0 Equations of Motion v1 Elliptical Fins + Individual Fin Roll Moment Sensitivity Analysis References diff --git a/docs/user/aerodynamics/surfaces.rst b/docs/user/aerodynamics/surfaces.rst new file mode 100644 index 000000000..38f266dca --- /dev/null +++ b/docs/user/aerodynamics/surfaces.rst @@ -0,0 +1,350 @@ +.. _aerodynamic_surfaces: + +==================== +Aerodynamic Surfaces +==================== + +This page provides an overview of the aerodynamic surfaces available in +RocketPy and explains how they connect to the rocket's simulation. + +RocketPy models the aerodynamic forces and moments generated by three types +of surfaces: **nose cones**, **fins**, and **tails**. Each surface is +defined by its geometric parameters and, optionally, by an airfoil profile. +The aerodynamic coefficients are computed internally using the Barrowman +method and are used during the flight simulation to evaluate the rocket's +stability and control. + +.. seealso:: + + For the full mathematical derivations of the Barrowman method applied to + individual fins, see :doc:`Individual Fin Model `. + + For the elliptical fin equations, see + :doc:`Elliptical Fins Equations `. + + For roll dynamics and cant angle conventions, see + :doc:`Roll Equations `. + + For the coordinate systems used by the Rocket class, see + :doc:`Rocket Class Axes Definitions ` and + :doc:`Positions and Coordinate Systems `. + +Nose Cones +========== + +The nose cone is the forward-most aerodynamic surface of the rocket. It +contributes to the normal force and the center of pressure position. + +Available Nose Cone Kinds +------------------------- + +RocketPy supports the following nose cone shapes, specified via the ``kind`` +parameter: + +- ``"conical"``: A simple cone with a straight taper from base to tip. +- ``"ogive"``: A tangent ogive shape, defined by the ratio of the tip + radius to the base radius (the ``bluffness`` parameter). +- ``"elliptical"``: An elliptical cross-section nose cone. +- ``"tangent"``: A tangent ogive with a rounded tip. +- ``"von karman"``: A Von Karman ogive, a common choice for supersonic + rockets. +- ``"parabolic"``: A parabolic nose cone shape. +- ``"powerseries"``: A power series nose cone, controlled by the + ``power`` parameter (must be between 0 and 1). When this kind is used, + the ``bluffness`` parameter must be ``None`` or ``0``. +- ``"lvhaack"``: A LV-Haack series nose cone. + +.. note:: + + The ``bluffness`` parameter controls the ratio between the radius of + the rounded tip and the radius of the base. It is only used for ogive + nose cones. For all other kinds, it should be ``None`` or ``0``. + +.. caution:: + + When ``kind="powerseries"``, the ``power`` parameter is required and + must satisfy ``0 < power <= 1``. A value of 1 produces a conical shape, + while lower values produce blunter shapes. + +Geometric Parameters +-------------------- + +All nose cones share the following parameters: + +- ``length``: The length of the nose cone along the rocket's centerline. +- ``base_radius``: The radius of the nose cone at its base, which must + match the rocket's radius at the nose cone position. +- ``position``: The position of the nose cone along the rocket's + centerline, relative to the coordinate system origin. See + :doc:`Positions and Coordinate Systems ` for details. + +The center of pressure of the nose cone is computed internally and +contributes to the overall aerodynamic model. The normal force coefficient +derivative (CLalpha) depends on the nose cone kind and geometry. + +.. seealso:: + + For the class API, see :class:`rocketpy.NoseCone`. + +Fins +==== + +Fins are the primary stabilizing surfaces of a rocket. RocketPy supports +three fin geometries and two ways to define them: as a **fin set** (the +usual approach) or as an **individual fin**. + +Fin Sets vs. Individual Fins +----------------------------- + +RocketPy distinguishes between two levels of fin definition: + +- **Fin set classes** (:class:`rocketpy.TrapezoidalFins`, + :class:`rocketpy.EllipticalFins`, + :class:`rocketpy.FreeFormFins`): These classes define a *set* of N + fins arranged symmetrically around the rocket. The aerodynamic + coefficients are computed using the Barrowman method, which accounts for + fin-body interference. This is the most common way to define fins. + +- **Individual fin classes** (:class:`rocketpy.TrapezoidalFin`, + :class:`rocketpy.EllipticalFin`, + :class:`rocketpy.FreeFormFin`): These classes define a *single* fin. + The moment coefficients are derived differently and are documented + separately. Individual fins are useful for canards, asymmetric + configurations, or when you need fine-grained control. + +.. seealso:: + + For the mathematical model of individual fins, including the moment + coefficient derivations, see + :doc:`Individual Fin Model `. + +Fin Geometries +-------------- + +Trapezoidal Fins +~~~~~~~~~~~~~~~~ + +Trapezoidal fins are defined by a root chord, tip chord, span, and +optionally a sweep length. They are the most common fin geometry in +model rocketry. + +Parameters: + +- ``root_chord``: The chord length at the fin's root (where it meets the + rocket body). +- ``tip_chord``: The chord length at the fin's tip. Setting this to 0 + produces a triangular fin. +- ``span``: The span of the fin, measured from the rocket body to the + fin tip. +- ``sweep_length`` (optional): The distance from the root chord leading + edge to the tip chord leading edge, measured along the rocket's + centerline. If not provided, it is computed from the root chord, tip + chord, and span. +- ``cant_angle`` (optional): The angle at which the fin is canted + relative to the rocket's centerline, in radians. A positive cant angle + produces a negative roll moment at zero angle of attack. + +.. caution:: + + The ``cant_angle`` convention is important for control surface design. + See :doc:`Roll Equations ` for + details on how cant angles affect roll, pitch, and yaw moments. + +Elliptical Fins +~~~~~~~~~~~~~~~ + +Elliptical fins are defined by a root chord and a span. The chord length +varies elliptically from root to tip. + +Parameters: + +- ``root_chord``: The chord length at the fin's root. +- ``span``: The span of the fin. + +.. seealso:: + + For the full mathematical derivation, see + :doc:`Elliptical Fins Equations `. + +Free Form Fins +~~~~~~~~~~~~~~ + +Free form fins allow arbitrary fin shapes defined by a list of +``(x, y)`` coordinates. This is useful for non-standard fin geometries +that cannot be represented by trapezoidal or elliptical shapes. + +Parameters: + +- ``coordinates``: A list of ``(x, y)`` tuples defining the fin shape + in the fin coordinate frame. + +Common Fin Set Parameters +------------------------- + +In addition to the geometry-specific parameters above, all fin sets +share the following: + +- ``n``: The number of fins in the set (for fin set classes only). +- ``position``: The position of the fin set along the rocket's + centerline, relative to the coordinate system origin. +- ``angular_position`` (optional): The roll angle of the first fin in + the set, in degrees. Measured from the y-axis of the rocket's + coordinate system. +- ``rocket_radius``: The radius of the rocket at the fin's position. + This is usually set automatically when adding fins to a rocket. +- ``airfoil`` (optional): A tuple ``(path, units)`` specifying an + airfoil profile. See :ref:`airfoil_profiles` below. + +.. _airfoil_profiles: + +Airfoil Profiles +---------------- + +Fin aerodynamic coefficients can be enhanced by specifying an airfoil +profile. Without an airfoil, fins are treated as flat plates. + +The ``airfoil`` parameter accepts a tuple of the form ``(path, units)``: + +- ``path``: Path to a CSV file containing the airfoil's lift coefficient + curve. The first column is the angle of attack, the second column is + the lift coefficient (CL). +- ``units``: The unit of the angle of attack in the CSV file. Must be + either ``"radians"`` or ``"degrees"``. + +The CSV file should contain angle of attack points up to the stall point. +The data is used to compute the fin's CLalpha (normal force coefficient +derivative) during the simulation. + +.. note:: + + If ``airfoil`` is not provided or is ``None``, the fin is modeled as + a flat plate. This is a reasonable approximation for many model + rockets but may underestimate the normal force coefficient. + +.. seealso:: + + Airfoil data files can be obtained from + `Airfoil Tools `_. + +Adding Fins to a Rocket +----------------------- + +Fins can be added to a rocket using the ``Rocket`` class methods: + +.. code-block:: python + + from rocketpy import Rocket, TrapezoidalFins + + rocket = Rocket( + radius=0.0635, + mass=14.426, + inertia=(6.321, 6.321, 0.034), + power_off_drag="data/powerOffDragCurve.csv", + power_on_drag="data/powerOnDragCurve.csv", + center_of_mass_without_motor=0, + coordinate_system_orientation="tail_to_nose", + ) + + fin_set = rocket.add_trapezoidal_fins( + n=4, + root_chord=0.120, + tip_chord=0.060, + span=0.110, + position=-1.04956, + cant_angle=0.0, + airfoil=("data/airfoils/NACA0012-radians.txt", "radians"), + ) + +.. seealso:: + + - :meth:`rocketpy.Rocket.add_trapezoidal_fins` + - :meth:`rocketpy.Rocket.add_elliptical_fins` + - :meth:`rocketpy.Rocket.add_free_form_fins` + - :meth:`rocketpy.Rocket.add_surfaces` (for individual fins) + +Tail +==== + +The tail is a transitional surface at the aft end of the rocket, typically +used to reduce base drag. It is defined by a top radius, bottom radius, +and length. + +Parameters: + +- ``top_radius``: The radius of the tail at its top (where it meets the + rocket body). +- ``bottom_radius``: The radius of the tail at its bottom (aft end). +- ``length``: The length of the tail along the rocket's centerline. +- ``position``: The position of the tail along the rocket's centerline. + +The tail contributes to the normal force and center of pressure +calculation. Its effect is generally smaller than that of the nose cone +and fins. + +.. seealso:: + + For the class API, see :class:`rocketpy.Tail`. + +Generic Surfaces +================ + +For advanced use cases, RocketPy provides the +:class:`rocketpy.GenericSurface` and +:class:`rocketpy.LinearGenericSurface` classes. These allow you to +specify aerodynamic force and moment coefficients directly, rather than +relying on the built-in geometric models. + +This is useful when: + +- You have aerodynamic data from CFD simulations or wind tunnel tests. +- You want to model aerodynamic surfaces that do not fit the built-in + geometries (e.g., canards with unusual shapes, air brakes). + +.. seealso:: + + For more information, see + :doc:`Generic Surfaces and Custom Aerodynamic Coefficients `. + +.. note:: + + This section provides a brief overview of generic surfaces. A more + detailed treatment of coordinate frames and coefficient conventions + for generic surfaces is available in the referenced user guide page. + +Reference Area and Length +========================= + +The aerodynamic forces and moments computed by each surface are scaled by +a reference area and a reference length: + +- **Reference area**: The cross-sectional area of the rocket, computed + as :math:`\pi r^2` where :math:`r` is the rocket's radius. +- **Reference length**: The diameter of the rocket (:math:`2r`). + +These values are used consistently across all aerodynamic surfaces and +are set automatically from the rocket's radius. + +.. seealso:: + + For more details on how forces and moments are applied during the + simulation, see :class:`rocketpy.Rocket` and + :class:`rocketpy.Flight`. + +What's Next +============ + +This page covers the available surface types and their parameters. For +deeper understanding of the underlying math: + +- :doc:`Individual Fin Model `: + Full derivation of the Barrowman method for individual fins, including + moment coefficients. +- :doc:`Elliptical Fins Equations `: + Geometric parameters and center of pressure for elliptical fins. +- :doc:`Roll Equations `: + Roll moment and damping equations for high-powered rockets. + +For coordinate system conventions: + +- :doc:`Rocket Class Axes Definitions ` +- :doc:`Positions and Coordinate Systems ` diff --git a/docs/user/airbrakes.rst b/docs/user/airbrakes.rst index 97d39ba59..5d47d4d6b 100644 --- a/docs/user/airbrakes.rst +++ b/docs/user/airbrakes.rst @@ -95,60 +95,23 @@ To create an air brakes model, we essentially need to define the following: ``deployment_level`` attribute. Inside this function, any controller logic, filters, and apogee prediction can be implemented. -- The **sampling rate** of the controller function, in seconds. This is the time - between each call of the controller function, in simulation time. Must be - given in Hertz. +- The **sampling rate** of the controller function, in Hertz. This is how often + the controller function is called in simulation time (a **discrete** + controller). It can also be set to ``None`` to create a **continuous** + controller that is called at every solver step (see + :ref:`discrete-vs-continuous-controllers` below). Defining the Controller Function ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Lets start by defining a very simple controller function. -The ``controller_function`` must take in the following arguments, in this -order: - -1. ``time`` (float): The current simulation time in seconds. -2. ``sampling_rate`` (float): The rate at which the controller - function is called, measured in Hertz (Hz). -3. ``state`` (list): The state vector of the simulation. The state - is a list containing the following values, in this order: - - - ``x``: The x position of the rocket, in meters. - - ``y``: The y position of the rocket, in meters. - - ``z``: The z position of the rocket, in meters. - - ``v_x``: The x component of the velocity of the rocket, in meters per - second. - - ``v_y``: The y component of the velocity of the rocket, in meters per - second. - - ``v_z``: The z component of the velocity of the rocket, in meters per - second. - - ``e0``: The first component of the quaternion representing the rotation - of the rocket. - - ``e1``: The second component of the quaternion representing the rotation - of the rocket. - - ``e2``: The third component of the quaternion representing the rotation - of the rocket. - - ``e3``: The fourth component of the quaternion representing the rotation - of the rocket. - - ``w_x``: The x component of the angular velocity of the rocket, in - radians per second. - - ``w_y``: The y component of the angular velocity of the rocket, in - radians per second. - - ``w_z``: The z component of the angular velocity of the rocket, in - radians per second. - -4. ``state_history`` (list): A record of the rocket's state at each - step throughout the simulation. The state_history is organized as - a list of lists, with each sublist containing a state vector. The - last item in the list always corresponds to the previous state - vector, providing a chronological sequence of the rocket's - evolving states. -5. ``observed_variables`` (list): A list containing the variables that - the controller function returns. The return of each controller - function call is appended to the observed_variables list. The - initial value in the first step of the simulation of this list is - provided by the ``initial_observed_variables`` argument. -6. ``air_brakes`` (AirBrakes): The ``AirBrakes`` instance being controlled. +The ``controller_function`` receives information about the simulation at the +current time step and sets the air brakes' deployment level. See +:ref:`controllers` for the full description of its arguments and call signature. +For air brakes, the controlled object (the ``air_brakes`` argument) is the +:class:`rocketpy.AirBrakes` instance, whose ``deployment_level`` the function +sets. Our example ``controller_function`` will deploy the air brakes when the rocket reaches 1500 meters above the ground. The deployment level will be function of the @@ -224,22 +187,6 @@ Lets define the controller function: .. note:: - - The ``controller_function`` accepts 6, 7, or 8 parameters for backward - compatibility: - - * **6 parameters** (original): ``time``, ``sampling_rate``, ``state``, - ``state_history``, ``observed_variables``, ``air_brakes`` - * **7 parameters** (with sensors): adds ``sensors`` as the 7th parameter - * **8 parameters** (with environment): adds ``sensors`` and ``environment`` - as the 7th and 8th parameters - - - The **environment parameter** provides access to atmospheric conditions - (wind, temperature, pressure, elevation) without relying on global variables. - This enables proper serialization of rockets with air brakes and improves - code modularity. Available methods include ``environment.elevation``, - ``environment.wind_velocity_x(altitude)``, ``environment.wind_velocity_y(altitude)``, - ``environment.speed_of_sound(altitude)``, and others. - - The code inside the ``controller_function`` can be as complex as needed. Anything can be implemented inside the function, including filters, apogee prediction, and any controller logic. @@ -249,15 +196,10 @@ Lets define the controller function: 0 or higher than 1. If you want to disable this feature, set ``clamp`` to ``False`` when defining the air brakes. - - Anything can be returned by the ``controller_function``. The returned - values will be saved in the ``observed_variables`` list at every time step - and can then be accessed by the ``controller_function`` at the next time - step. The saved values can also be accessed after the simulation is - finished. This is useful for debugging and for plotting the results. - - - The ``controller_function`` can also be defined in a separate file and - imported into the simulation script. This includes importing a ``c`` or - ``cpp`` code into Python. + - See :ref:`controllers` for the controller-function signature (including the + 6/7/8-parameter forms and the ``environment`` argument), how returned + values are stored in ``observed_variables``, and discrete vs. continuous + controllers. Defining the Drag Coefficient @@ -372,6 +314,15 @@ controller function. If you want to disable this feature, set ``clamp`` to For more information on the :class:`rocketpy.AirBrakes` class initialization, see :class:`rocketpy.AirBrakes.__init__` section. +.. note:: + + Because our controller uses ``sampling_rate=10``, it is a **discrete** + controller and adds its sampling instants as time nodes to the simulation. + Remember to set ``time_overshoot=False`` in the ``Flight`` (see below) so the + integrator stops exactly at those instants. See + :ref:`discrete-vs-continuous-controllers` for the difference between discrete + and continuous controllers. + Simulating a Flight ------------------- diff --git a/docs/user/compare_flights.rst b/docs/user/compare_flights.rst index d7f8478c8..c352e8b19 100644 --- a/docs/user/compare_flights.rst +++ b/docs/user/compare_flights.rst @@ -14,7 +14,7 @@ We will start by importing the necessary classes and modules: .. jupyter-execute:: from rocketpy.plots.compare import CompareFlights - from rocketpy import Environment, Flight, Rocket, SolidMotor + from rocketpy import Environment, Flight, Rocket, SolidMotor, HemisphericalParachute from datetime import datetime, timedelta @@ -83,7 +83,7 @@ This is done following the same steps as in the :ref:`firstsimulation` example. top_radius=0.0635, bottom_radius=0.0435, length=0.060, position=-1.194656 ) - main_chute = calisto.add_parachute( + main_chute = HemisphericalParachute( "Main", cd_s=10.0, trigger=800, @@ -92,7 +92,7 @@ This is done following the same steps as in the :ref:`firstsimulation` example. noise=(0, 8.3, 0.5), ) - drogue_chute = calisto.add_parachute( + drogue_chute = HemisphericalParachute( "Drogue", cd_s=1.0, trigger="apogee", @@ -100,6 +100,8 @@ This is done following the same steps as in the :ref:`firstsimulation` example. lag=1.5, noise=(0, 8.3, 0.5), ) + calisto.add_parachute(parachute = main_chute) + calisto.add_parachute(parachute = drogue_chute) Creating the Flight objects --------------------------- diff --git a/docs/user/controllers.rst b/docs/user/controllers.rst new file mode 100644 index 000000000..0b866dfb0 --- /dev/null +++ b/docs/user/controllers.rst @@ -0,0 +1,132 @@ +.. _controllers: + +Controllers +=========== + +RocketPy can simulate active, in-flight control systems — such as air brakes or +other actuators — through a *controller function* that you attach to a +controllable object (for example, an :class:`rocketpy.AirBrakes` added with +``Rocket.add_air_brakes``). During the flight simulation, RocketPy calls your +controller function at the appropriate times, letting it read the current +simulation state and command the actuator. + +This page describes the controller-function interface and how its call timing is +governed. For a complete, runnable example that puts these pieces together, see +the :doc:`Air Brakes Example `. + +The Controller Function +----------------------- + +A controller function receives information about the simulation up to the +current time step and sets the state of the controlled object. It must take in +the following arguments, in this order: + +1. ``time`` (float): The current simulation time in seconds. +2. ``sampling_rate`` (float or ``None``): The rate at which the controller + function is called, measured in Hertz (Hz). It is ``None`` for continuous + controllers, so guard any ``1 / sampling_rate`` computation against ``None``. +3. ``state`` (list): The state vector of the simulation. The state + is a list containing the following values, in this order: + + - ``x``: The x position of the rocket, in meters. + - ``y``: The y position of the rocket, in meters. + - ``z``: The z position of the rocket, in meters. + - ``v_x``: The x component of the velocity of the rocket, in meters per + second. + - ``v_y``: The y component of the velocity of the rocket, in meters per + second. + - ``v_z``: The z component of the velocity of the rocket, in meters per + second. + - ``e0``: The first component of the quaternion representing the rotation + of the rocket. + - ``e1``: The second component of the quaternion representing the rotation + of the rocket. + - ``e2``: The third component of the quaternion representing the rotation + of the rocket. + - ``e3``: The fourth component of the quaternion representing the rotation + of the rocket. + - ``w_x``: The x component of the angular velocity of the rocket, in + radians per second. + - ``w_y``: The y component of the angular velocity of the rocket, in + radians per second. + - ``w_z``: The z component of the angular velocity of the rocket, in + radians per second. + +4. ``state_history`` (list): A record of the rocket's state at each + step throughout the simulation. The state_history is organized as + a list of lists, with each sublist containing a state vector. The + last item in the list always corresponds to the previous state + vector, providing a chronological sequence of the rocket's + evolving states. +5. ``observed_variables`` (list): A list containing the variables that + the controller function returns. The return of each controller + function call is appended to the observed_variables list. The + initial value in the first step of the simulation of this list is + provided by the ``initial_observed_variables`` argument. +6. The **controlled object** (e.g. ``air_brakes``): the instance being + controlled, whose attributes the function sets (for example, + ``air_brakes.deployment_level``). + +.. note:: + + - The controller function accepts 6, 7, or 8 parameters for backward + compatibility: + + * **6 parameters** (original): ``time``, ``sampling_rate``, ``state``, + ``state_history``, ``observed_variables``, and the controlled object. + * **7 parameters** (with sensors): adds ``sensors`` as the 7th parameter. + * **8 parameters** (with environment): adds ``sensors`` and ``environment`` + as the 7th and 8th parameters. + + - The **environment parameter** provides access to atmospheric conditions + (wind, temperature, pressure, elevation) without relying on global + variables. This enables proper serialization of rockets with controllers + and improves code modularity. Available methods include + ``environment.elevation``, ``environment.wind_velocity_x(altitude)``, + ``environment.wind_velocity_y(altitude)``, + ``environment.speed_of_sound(altitude)``, and others. + + - Anything can be returned by the controller function. The returned values + are saved in the ``observed_variables`` list at every time step and can + then be accessed by the controller function at the next time step. The + saved values can also be accessed after the simulation is finished, which + is useful for debugging and for plotting the results. + + - The controller function can also be defined in a separate file and + imported into the simulation script. This includes importing ``c`` or + ``cpp`` code into Python. + +.. _discrete-vs-continuous-controllers: + +Discrete vs. Continuous Controllers +----------------------------------- + +The ``sampling_rate`` argument determines *when* the controller function is +called during the flight simulation: + +- **Discrete controller** (``sampling_rate`` set to a number, e.g. ``10``): + the controller function is called at fixed intervals of ``1 / sampling_rate`` + seconds. This mirrors a real flight computer that reads its sensors and + updates its actuators at a fixed frequency, and is the recommended choice + when you want the simulation to reflect the actual control-loop rate of your + hardware. +- **Continuous controller** (``sampling_rate=None``): the controller function + is called at *every* solver step of the numerical integrator. Use this when + you want the control law to act as a continuous function of the state rather + than a sampled one (for example, when validating a control model + analytically). + +.. warning:: + + For continuous controllers, ``sampling_rate`` is passed to your controller + function as ``None``. Any computation such as ``1 / sampling_rate`` (a + common pattern for rate-limiting deployment) must guard against ``None`` to + avoid a ``TypeError``. + +.. note:: + + Discrete controllers add their sampling instants as time nodes to the + simulation, so remember to set ``time_overshoot=False`` in the ``Flight`` + to make the integrator stop exactly at those instants. Continuous + controllers do not add time nodes; they are evaluated on the integrator's + own steps. diff --git a/docs/user/deployable.rst b/docs/user/deployable.rst index cd9a7a97b..ddc082a6f 100644 --- a/docs/user/deployable.rst +++ b/docs/user/deployable.rst @@ -8,7 +8,7 @@ Let's start by importing the rocketpy classes we will use. .. jupyter-execute:: - from rocketpy import Environment, SolidMotor, Rocket, Flight + from rocketpy import Environment, SolidMotor, Rocket, Flight, HemisphericalParachute Creating Environment @@ -182,7 +182,7 @@ Therefore we should be careful with the value of its mass. # Define Parachutes for the rocket - main_chute = rocket_without_payload.add_parachute( + main_chute = HemisphericalParachute( "Main", cd_s=7.2, trigger=800, @@ -191,7 +191,7 @@ Therefore we should be careful with the value of its mass. noise=(0, 8.3, 0.5), ) - drogue_chute = rocket_without_payload.add_parachute( + drogue_chute = HemisphericalParachute( "Drogue", cd_s=0.72, trigger="apogee", @@ -199,6 +199,8 @@ Therefore we should be careful with the value of its mass. lag=1.5, noise=(0, 8.3, 0.5), ) + rocket_without_payload.add_parachute(parachute = main_chute) + rocket_without_payload.add_parachute(parachute = drogue_chute) .. jupyter-execute:: @@ -242,7 +244,7 @@ surfaces to stabilize it, nor a motor that ignites. It does, however, have parac center_of_mass_without_motor=0, ) - payload_drogue = payload_rocket.add_parachute( + payload_drogue = HemisphericalParachute( "Drogue", cd_s=0.35, trigger="apogee", @@ -251,7 +253,7 @@ surfaces to stabilize it, nor a motor that ignites. It does, however, have parac noise=(0, 8.3, 0.5), ) - payload_main = payload_rocket.add_parachute( + payload_main = HemisphericalParachute( "Main", cd_s=4.0, trigger=800, @@ -259,6 +261,8 @@ surfaces to stabilize it, nor a motor that ignites. It does, however, have parac lag=1.5, noise=(0, 8.3, 0.5), ) + payload_rocket.add_parachute(parachute = payload_drogue) + payload_rocket.add_parachute(parachute = payload_main) .. important:: diff --git a/docs/user/environment/1-atm-models/ensemble.rst b/docs/user/environment/1-atm-models/ensemble.rst index 504cbfe60..8dffaac00 100644 --- a/docs/user/environment/1-atm-models/ensemble.rst +++ b/docs/user/environment/1-atm-models/ensemble.rst @@ -25,8 +25,8 @@ Global Ensemble Forecast System (GEFS) .. danger:: - **GEFS shortcut unavailable**: ``file="GEFS"`` is currently disabled in - RocketPy because NOMADS OPeNDAP is deactivated for this endpoint. + **GEFS unavailable**: ``file="GEFS"`` is currently disabled in + RocketPy because NOMADS OPeNDAP has been deactivated. .. note:: diff --git a/docs/user/environment/1-atm-models/forecast.rst b/docs/user/environment/1-atm-models/forecast.rst index ac91504e0..ea81c356a 100644 --- a/docs/user/environment/1-atm-models/forecast.rst +++ b/docs/user/environment/1-atm-models/forecast.rst @@ -6,8 +6,8 @@ Forecasts Weather forecasts can be used to set the atmospheric model in RocketPy. Here, we will showcase how to import global forecasts such as GFS, as well as -local forecasts like NAM and RAP for North America, all available through -OPeNDAP on the `NOAA's NCEP NOMADS `_ website. +local forecasts like NAM, RAP and HRRR for North America, all available through +OPeNDAP on the `UCAR THREDDS `_ server. Other generic forecasts can also be imported. .. important:: @@ -22,6 +22,10 @@ Other generic forecasts can also be imported. Global Forecast System (GFS) ---------------------------- +GFS is NOAA's global numerical weather prediction model. It provides worldwide +atmospheric forecasts and is usually a good default choice when you need broad +coverage, consistent availability, and launch planning several days ahead. + Using the latest forecast from GFS is simple. Set the atmospheric model to ``forecast`` and specify that GFS is the file you want. Note that since data is downloaded from a remote OPeNDAP server, this line of code can @@ -48,9 +52,34 @@ take longer than usual. `GFS overview page `_. +Artificial Intelligence Global Forecast System (AIGFS) +------------------------------------------------------ + +AIGFS is a global AI-based forecast product distributed through the same THREDDS +ecosystem used by other RocketPy forecast inputs. It is useful when you want a +global forecast alternative to traditional physics-only models. + +RocketPy supports the latest AIGFS global forecast through THREDDS. + +.. jupyter-execute:: + + env_aigfs = Environment(date=tomorrow) + env_aigfs.set_atmospheric_model(type="forecast", file="AIGFS") + env_aigfs.plots.atmospheric_model() + +.. note:: + + AIGFS is currently available as a global 0.25 degree forecast product on + UCAR THREDDS. + + North American Mesoscale Forecast System (NAM) ---------------------------------------------- +NAM is a regional forecast model focused on North America. It is best suited +for launches inside its coverage area when you want finer regional detail than +global models typically provide. + You can also request the latest forecasts from NAM. Since this is a regional model for North America, you need to specify latitude and longitude points within North America. @@ -78,6 +107,10 @@ We will use **SpacePort America** for this, represented by coordinates Rapid Refresh (RAP) ------------------- +RAP is a short-range, high-frequency regional model for North America. It is +especially useful for near-term operations, where fast update cycles are more +important than long forecast horizon. + The Rapid Refresh (RAP) model is another regional model for North America. It is similar to NAM, but with a higher resolution and a shorter forecast range. The same coordinates for SpacePort America will be used. @@ -111,6 +144,17 @@ The same coordinates for SpacePort America will be used. High Resolution Window (HIRESW) ------------------------------- +HIRESW is a convection-allowing, high-resolution regional system designed to +resolve local weather structure better than coarser grids. It is most useful +for short-range, local analysis where small-scale wind and weather features +matter. + +The High Resolution Window (HIRESW) model is a sophisticated weather forecasting +system that operates at a high spatial resolution of approximately 3 km. +It utilizes two main dynamical cores: the Advanced Research WRF (WRF-ARW) and +the Finite Volume Cubed Sphere (FV3), each designed to enhance the accuracy of +weather predictions. + .. danger:: **HIRESW shortcut unavailable**: ``file="HIRESW"`` is currently disabled in @@ -121,6 +165,33 @@ you can still load it explicitly by passing the path/URL in ``file`` and an appropriate mapping in ``dictionary``. +High-Resolution Rapid Refresh (HRRR) +------------------------------------ + +HRRR is a high-resolution, short-range forecast model for North America with +hourly updates. It is generally best for day-of-launch weather assessment and +rapidly changing local conditions. + +RocketPy supports HRRR through a dedicated THREDDS shortcut. +Like NAM and RAP, HRRR is a regional model over North America, so you need to +specify latitude and longitude points within its coverage area. The same +SpacePort America coordinates used above will be reused here. + +.. code-block:: python + + env_hrrr = Environment( + date=tomorrow, + latitude=32.988528, + longitude=-106.975056, + ) + env_hrrr.set_atmospheric_model(type="forecast", file="HRRR") + env_hrrr.plots.atmospheric_model() + +.. note:: + + HRRR is a high-resolution regional model with approximately 2.5 km grid + spacing over CONUS. Availability depends on upstream THREDDS data services. + Using Windy Atmosphere ---------------------- @@ -154,6 +225,10 @@ to EuRoC's launch area in Portugal. ECMWF ^^^^^ +ECMWF (HRES) is a global, high-skill forecast model known for strong +medium-range performance. It is often a good choice for mission planning when +you need reliable synoptic-scale forecasts several days ahead. + We can use the ``ECMWF`` model from Windy.com. .. jupyter-execute:: @@ -173,6 +248,10 @@ We can use the ``ECMWF`` model from Windy.com. GFS ^^^ +Windy's GFS option provides NOAA's global model through Windy's interface. It +is a practical baseline for global coverage and for comparing against other +models when assessing forecast uncertainty. + The ``GFS`` model is also available on Windy.com. This is the same model as described in the :ref:`global-forecast-system` section. @@ -186,6 +265,10 @@ described in the :ref:`global-forecast-system` section. ICON ^^^^ +ICON is DWD's global weather model, available in Windy for broad-scale +forecasting. It is useful as an independent global model source to cross-check +wind and temperature trends against GFS or ECMWF. + The ICON model is a global weather forecasting model already available on Windy.com. .. jupyter-execute:: @@ -203,6 +286,10 @@ The ICON model is a global weather forecasting model already available on Windy. ICON-EU ^^^^^^^ +ICON-EU is the regional European configuration of ICON, with higher spatial +detail over Europe than ICON-Global. It is best for European launch sites when +regional structure is important. + The ICON-EU model is a regional weather forecasting model available on Windy.com. .. code-block:: python @@ -228,4 +315,4 @@ Also, the servers may be down or may face high traffic. .. seealso:: To browse available NCEP model collections on UCAR THREDDS, visit - `THREDDS NCEP Catalog `_. \ No newline at end of file + `THREDDS NCEP Catalog `_. diff --git a/docs/user/environment/1-atm-models/soundings.rst b/docs/user/environment/1-atm-models/soundings.rst index 279750df5..39fa57d17 100644 --- a/docs/user/environment/1-atm-models/soundings.rst +++ b/docs/user/environment/1-atm-models/soundings.rst @@ -13,20 +13,34 @@ Wyoming Upper Air Soundings The University of Wyoming - College of Engineering - Department of Atmospheric Sciences has a comprehensive collection of atmospheric soundings on their website, -accessible `here `_. +accessible `here `_. For this example, we will use the sounding from 83779 SBMT Marte Civ Observations -at 04 Feb 2019, which can be accessed using this URL: -http://weather.uwyo.edu/cgi-bin/sounding?region=samer&TYPE=TEXT%3ALIST&YEAR=2019&MONTH=02&FROM=0500&TO=0512&STNM=83779 +at 05 Feb 2019, which can be accessed using this URL: +https://weather.uwyo.edu/wsgi/sounding?datetime=2019-02-05%2012:00:00&id=83779&type=TEXT:LIST + +.. important:: + + The University of Wyoming discontinued the legacy + ``weather.uwyo.edu/cgi-bin/sounding`` endpoint. URLs in that old format no + longer work; use the new ``weather.uwyo.edu/wsgi/sounding`` format shown + above, which RocketPy supports since v1.13.0. Initialize a new Environment instance: -.. jupyter-execute:: +.. note:: + + The example below is shown as static code (it is not executed during the + documentation build) because it requires a live network request to an + external University of Wyoming service. Run it locally to fetch the + sounding and see the resulting atmospheric plots. + +.. code-block:: python from rocketpy import Environment - url = "http://weather.uwyo.edu/cgi-bin/sounding?region=samer&TYPE=TEXT%3ALIST&YEAR=2019&MONTH=02&FROM=0500&TO=0512&STNM=83779" + url = "https://weather.uwyo.edu/wsgi/sounding?datetime=2019-02-05%2012:00:00&id=83779&type=TEXT:LIST" env = Environment() env.set_atmospheric_model(type="wyoming_sounding", file=url) @@ -59,7 +73,7 @@ Integrated Global Radiosonde Archive (IGRA). These options can be retrieved as a text file in GSD format. However, RocketPy no longer provides a dedicated ``set_atmospheric_model`` type for -NOAA RUC Soundings. +NOAA RUC Soundings, since NOAA has discontinued the OPENDAP service. .. note:: diff --git a/docs/user/environment/3-further/other_apis.rst b/docs/user/environment/3-further/other_apis.rst index 01d4b9a30..37a9a0949 100644 --- a/docs/user/environment/3-further/other_apis.rst +++ b/docs/user/environment/3-further/other_apis.rst @@ -89,8 +89,10 @@ Instead of a custom dictionary, you can pass a built-in mapping name in the - ``"ECMWF_v0"`` - ``"NOAA"`` - ``"GFS"`` +- ``"AIGFS"`` - ``"NAM"`` - ``"RAP"`` +- ``"HRRR"`` - ``"HIRESW"`` (mapping available; latest-model shortcut currently disabled) - ``"GEFS"`` (mapping available; latest-model shortcut currently disabled) - ``"MERRA2"`` @@ -116,10 +118,7 @@ legacy aliases: - ``"NAM_LEGACY"`` - ``"NOAA_LEGACY"`` - ``"RAP_LEGACY"`` -- ``"CMC_LEGACY"`` - ``"GEFS_LEGACY"`` -- ``"HIRESW_LEGACY"`` -- ``"MERRA2_LEGACY"`` Legacy aliases primarily cover older variable naming patterns such as ``lev``, ``tmpprs``, ``hgtprs``, ``ugrdprs`` and ``vgrdprs``. diff --git a/docs/user/first_simulation.rst b/docs/user/first_simulation.rst index 364557891..effa5ce0d 100644 --- a/docs/user/first_simulation.rst +++ b/docs/user/first_simulation.rst @@ -67,7 +67,7 @@ we will use from RocketPy: .. jupyter-execute:: - from rocketpy import Environment, SolidMotor, Rocket, Flight + from rocketpy import Environment, SolidMotor, Rocket, Flight, HemisphericalParachute .. note:: @@ -272,7 +272,7 @@ Finally, we can add any number of Parachutes to the ``Rocket`` object. .. jupyter-execute:: - main = calisto.add_parachute( + main = HemisphericalParachute( name="main", cd_s=10.0, trigger=800, # ejection altitude in meters @@ -284,7 +284,7 @@ Finally, we can add any number of Parachutes to the ``Rocket`` object. porosity=0.0432, ) - drogue = calisto.add_parachute( + drogue = HemisphericalParachute( name="drogue", cd_s=1.0, trigger="apogee", # ejection at apogee @@ -295,6 +295,8 @@ Finally, we can add any number of Parachutes to the ``Rocket`` object. height=1.5, porosity=0.0432, ) + calisto.add_parachute(parachute = main) + calisto.add_parachute(parachute = drogue) We can then see if the rocket is stable by plotting the static margin: @@ -587,7 +589,7 @@ Use the dedicated exporter class: .. note:: - The legacy method ``Flight.export_kml`` is deprecated. Use + The legacy method ``Flight.export_kml`` was removed in v1.13.0. Use :meth:`rocketpy.simulation.flight_data_exporter.FlightDataExporter.export_kml`. Manipulating results @@ -687,7 +689,7 @@ by not passing any attribute names: .. note:: - The legacy method ``Flight.export_data`` is deprecated. Use + The legacy method ``Flight.export_data`` was removed in v1.13.0. Use :meth:`rocketpy.simulation.flight_data_exporter.FlightDataExporter.export_data`. Saving and Storing Plots diff --git a/docs/user/flight.rst b/docs/user/flight.rst index 31e7ab588..a220554ab 100644 --- a/docs/user/flight.rst +++ b/docs/user/flight.rst @@ -274,7 +274,7 @@ During the rail launch phase, RocketPy calculates reaction forces and internal b **Rail Button Forces (N):** - ``rail_button1_normal_force`` : Normal reaction force at upper rail button -- ``rail_button1_shear_force`` : Shear (tangential) reaction force at upper rail button +- ``rail_button1_shear_force`` : Shear (tangential) reaction force at upper rail button - ``rail_button2_normal_force`` : Normal reaction force at lower rail button - ``rail_button2_shear_force`` : Shear (tangential) reaction force at lower rail button @@ -282,7 +282,7 @@ During the rail launch phase, RocketPy calculates reaction forces and internal b - ``rail_button1_bending_moment`` : Time-dependent bending moment at upper rail button attachment - ``max_rail_button1_bending_moment`` : Maximum absolute bending moment at upper rail button -- ``rail_button2_bending_moment`` : Time-dependent bending moment at lower rail button attachment +- ``rail_button2_bending_moment`` : Time-dependent bending moment at lower rail button attachment - ``max_rail_button2_bending_moment`` : Maximum absolute bending moment at lower rail button **Calculation Method:** @@ -454,6 +454,122 @@ Flight Data Plots # Flight path and orientation flight.plots.flight_path_angle_data() +3D Flight Animation +~~~~~~~~~~~~~~~~~~~ + +RocketPy can produce real-time interactive 3D animations of the simulated +flight using `vedo `_, a scientific visualization +library built on top of VTK. Two complementary animation modes are provided: + +.. list-table:: + :header-rows: 1 + :widths: 30 70 + + * - Method + - What it shows + * - ``flight.plots.animate_trajectory()`` + - The rocket 3D model moves through space following the simulated + trajectory; a black trail line is drawn behind it. + * - ``flight.plots.animate_rotate()`` + - The rocket 3D model stays centred in the scene; only its attitude + (orientation derived from the quaternion solution) is animated. + +.. note:: + + The animation window opens on the desktop via VTK. It will **not** render + inside headless environments such as Google Colab. For notebook use, run + the cell on a local Jupyter server or JupyterLab installation. + +**Installation** + +The ``vedo`` dependency is not installed by default. Add the optional extra +before calling either animation method: + +.. code-block:: bash + + pip install rocketpy[animation] + +If ``vedo`` is not available when an animation method is called, RocketPy +raises an :class:`ImportError` with the above install command embedded in the +message. + +**animate_trajectory — full 6-DOF trajectory animation** + +.. code-block:: python + + # Quickstart: uses RocketPy's built-in default STL rocket model + flight.plots.animate_trajectory() + + # Customise the time window and frame rate + flight.plots.animate_trajectory( + start=0.0, # start time in seconds (default: 0) + stop=flight.t_final, # end time in seconds (default: t_final) + time_step=0.05, # seconds per frame (default: 0.1) + ) + + # Provide your own 3D model (any STL file) + flight.plots.animate_trajectory( + file_name="my_rocket.stl", + start=0.0, + stop=flight.t_final, + time_step=0.05, + ) + +**animate_rotate — attitude-only animation** + +Useful for inspecting roll, pitch, and yaw behaviour without the distraction of +the trajectory translation. The rocket mesh is fixed at its position at +``start`` and only rotated according to the quaternion solution. + +.. code-block:: python + + flight.plots.animate_rotate( + start=0.0, + stop=flight.t_final, + time_step=0.05, + ) + +**Parameters** + +Both methods share the same signature: + +.. list-table:: + :header-rows: 1 + :widths: 20 15 65 + + * - Parameter + - Default + - Description + * - ``file_name`` + - ``None`` + - Path to a ``.stl`` model file. When ``None``, the built-in default + rocket shape packaged with RocketPy is used. + * - ``start`` + - ``0`` + - Animation start time in seconds. Must be within + ``[0, flight.t_final]``. + * - ``stop`` + - ``None`` + - Animation end time in seconds. ``None`` defaults to + ``flight.t_final``. + * - ``time_step`` + - ``0.1`` + - Duration of each frame in seconds. Smaller values produce smoother + animations at the cost of longer render times. Must be > 0. + * - ``**kwargs`` + - — + - Additional keyword arguments forwarded to ``vedo.Plotter.show`` + (e.g. ``viewup``, ``azimuth``, ``elevation``). + +**Tips** + +- A ``time_step`` of ``0.05`` (20 fps) is a good balance between smoothness + and performance for flights lasting tens of seconds. +- Press **Escape** or close the vedo window to exit the animation loop early. +- Both methods validate ``start``, ``stop``, ``time_step``, and the STL path + before any rendering begins, raising a :class:`ValueError` with a descriptive + message on invalid input. + Forces and Moments ~~~~~~~~~~~~~~~~~~ diff --git a/docs/user/index.rst b/docs/user/index.rst index 5afaee3a6..6f9d9effa 100644 --- a/docs/user/index.rst +++ b/docs/user/index.rst @@ -24,7 +24,10 @@ RocketPy's User Guide :caption: Special Case Simulations Compare Flights Class + Flight Comparator Class + Parachute Triggers (Acceleration-Based) Deployable Payload + Controllers Air Brakes Example ../notebooks/sensors.ipynb ../matlab/matlab.rst @@ -46,4 +49,6 @@ RocketPy's User Guide :caption: Further Analysis Function - Utilities \ No newline at end of file + Utilities + Aerodynamic Surfaces + Logging diff --git a/docs/user/installation.rst b/docs/user/installation.rst index 72ba1f42d..41ea2e3e4 100644 --- a/docs/user/installation.rst +++ b/docs/user/installation.rst @@ -19,7 +19,7 @@ If you want to choose a specific version to guarantee compatibility, you may ins .. code-block:: shell - pip install rocketpy==1.11.0 + pip install rocketpy==1.13.0 Optional Installation Method: ``conda`` @@ -138,22 +138,40 @@ To update Scipy and install netCDF4 using Conda, the following code is used: Optional Packages ^^^^^^^^^^^^^^^^^ -The EnvironmentAnalysis class requires a few extra packages to be installed. -In case you want to use this class, you will need to install the following packages: +RocketPy has several optional feature sets that can be installed individually. -- `timezonefinder` : to allow for automatic timezone detection, -- `windrose` : to allow for windrose plots, -- `ipywidgets` : to allow for GIFs generation, -- `jsonpickle` : to allow for saving and loading of class instances. +**Environment Analysis** — extra plots and tools for the +:class:`rocketpy.EnvironmentAnalysis` class: -You can install all these packages by simply running the following lines in your preferred terminal: +- `timezonefinder` : automatic timezone detection +- `windrose` : windrose plots +- `ipywidgets` : GIF generation +- `jsonpickle` : saving and loading class instances .. code-block:: shell pip install rocketpy[env_analysis] +**3D Flight Animation** — interactive 3D animations of rocket trajectory and +attitude using `vedo `_ (requires a desktop environment): -Alternatively, you can instal all extra packages by running the following line in your preferred terminal: +.. code-block:: shell + + pip install rocketpy[animation] + +Once installed, you can render animations from a :class:`rocketpy.Flight` object: + +.. code-block:: python + + # Animate rocket moving through 3D space + flight.plots.animate_trajectory(start=0, stop=flight.t_final, time_step=0.05) + + # Animate attitude changes only (rocket stays centred) + flight.plots.animate_rotate(start=0, stop=flight.t_final, time_step=0.05) + +See :ref:`flightusage` for full details and parameter descriptions. + +**All extras** — install every optional dependency at once: .. code-block:: shell diff --git a/docs/user/logging.rst b/docs/user/logging.rst new file mode 100644 index 000000000..469175bde --- /dev/null +++ b/docs/user/logging.rst @@ -0,0 +1,75 @@ +Logging +======= + +RocketPy uses Python's built-in `logging `_ +module to report internal runtime events, such as simulation progress, +warnings and errors. By design, RocketPy is **silent by default**: unless +you configure a handler, no log records are printed to the console. This +follows the best practices recommended for Python libraries and keeps +RocketPy from cluttering the output of applications that embed it. + +.. note:: + This only affects internal runtime events. Output that you explicitly + request, such as ``flight.info()`` or ``rocket.all_info()``, continues + to print directly to the terminal regardless of the logging + configuration described here. + +Enabling logging +----------------- + +The easiest way to see RocketPy's internal log messages is the +:func:`rocketpy.utilities.enable_logging` helper, which attaches a console +handler to RocketPy's logger hierarchy: + +.. jupyter-execute:: + + import rocketpy + + rocketpy.utilities.enable_logging(level="INFO") + +Once enabled, operations such as saving a file or completing a simulation +will emit messages to the console, for example: + +.. code-block:: text + + INFO | rocketpy.simulation.flight | Simulation completed successfully. + +Log levels +---------- + +The ``level`` parameter controls the minimum severity of messages that are +shown: + +- ``DEBUG``: high-frequency, low-level detail (e.g. solver iterations), + useful when troubleshooting a simulation. +- ``INFO``: confirmations of completed operations (e.g. simulation + completed, file saved). +- ``WARNING`` (default): unexpected but recoverable situations (e.g. a + missing motor, an automatically corrected geometry parameter). +- ``ERROR``: a feature is broken or an optional dependency is missing. + +.. jupyter-execute:: + + # Show every internal runtime message, including solver ticks + rocketpy.utilities.enable_logging(level="DEBUG") + +Filtering by module +-------------------- + +Because each RocketPy module exposes its own logger (e.g. +``rocketpy.simulation.flight``, ``rocketpy.environment.environment``), you +can rely on the standard ``logging`` module to filter or redirect messages +from specific modules, without using :func:`rocketpy.utilities.enable_logging` +at all: + +.. code-block:: python + + import logging + + handler = logging.StreamHandler() + handler.setFormatter(logging.Formatter("%(levelname)s | %(name)s | %(message)s")) + + # Only show logs coming from the Flight simulation module + flight_logger = logging.getLogger("rocketpy.simulation.flight") + flight_logger.addHandler(handler) + flight_logger.setLevel(logging.INFO) diff --git a/docs/user/motors/motors.rst b/docs/user/motors/motors.rst index b690cf9e8..2058ed677 100644 --- a/docs/user/motors/motors.rst +++ b/docs/user/motors/motors.rst @@ -33,6 +33,12 @@ Motors Usage Generic Motor Usage +.. toctree:: + :maxdepth: 3 + :caption: Ring Cluster Motors + + Ring Cluster Motor Usage + .. toctree:: :maxdepth: 3 :caption: Tanks and Fluid diff --git a/docs/user/motors/ringclustermotor.rst b/docs/user/motors/ringclustermotor.rst new file mode 100644 index 000000000..07ec0842a --- /dev/null +++ b/docs/user/motors/ringclustermotor.rst @@ -0,0 +1,93 @@ +.. _ringclustermotor: + +RingClusterMotor Class Usage +============================ + +Here we explore different features of the ``RingClusterMotor`` class. + +``RingClusterMotor`` models a ring (annular) configuration of ``N`` identical +motors arranged symmetrically around a circular perimeter of a given radius, +with no central motor along the rocket's longitudinal axis. It is a thin +wrapper around a single, already-defined motor: all thrust-, mass- and +inertia-related quantities are derived automatically from that base motor, +its ``number`` of copies and their ``radius`` from the rocket's central axis. + +Key Assumptions +--------------- + +- ``number`` must be an integer ``>= 2``; +- ``radius`` must be non-negative; +- The base motor is currently expected to be a ``SolidMotor``, since + ``RingClusterMotor`` reuses its grain properties directly; +- Motors are assumed identical and evenly spaced around the ring + (``360 / number`` degrees apart); +- The transverse inertia (``I11``/``I22``) contribution of each motor is + computed explicitly via the parallel axis (Steiner) theorem for every + angular position, which keeps the result accurate even for the + asymmetric ``number=2`` case. + +Creating a Ring Cluster Motor +------------------------------ + +To define a ``RingClusterMotor``, we first need a fully defined base motor +(typically a ``SolidMotor``), then wrap it with the number of motors in the +cluster and their radial distance from the rocket's central axis: + +.. jupyter-execute:: + + from rocketpy import SolidMotor, RingClusterMotor + + base_motor = SolidMotor( + thrust_source="../data/motors/cesaroni/Cesaroni_M1670.eng", + dry_mass=1.815, + dry_inertia=(0.125, 0.125, 0.002), + nozzle_radius=33 / 1000, + grain_number=5, + grain_density=1815, + grain_outer_radius=33 / 1000, + grain_initial_inner_radius=15 / 1000, + grain_initial_height=120 / 1000, + grain_separation=5 / 1000, + grains_center_of_mass_position=0.397, + center_of_dry_mass_position=0.317, + nozzle_position=0, + burn_time=3.9, + throat_radius=11 / 1000, + coordinate_system_orientation="nozzle_to_combustion_chamber", + ) + + cluster_motor = RingClusterMotor( + motor=base_motor, + number=4, + radius=0.1, + ) + + # Print the cluster (and underlying single-motor) information + cluster_motor.info() + +.. note:: + + ``RingClusterMotor`` does not read a thrust curve file directly. Instead, + it scales the ``thrust``, ``dry_mass``, ``propellant_mass`` and inertia + properties of the ``motor`` passed in by ``number``, so any changes to + ``base_motor`` must be made before it is wrapped. + +Since a ``RingClusterMotor`` is a ``Motor`` like any other, it can be attached +to a ``Rocket`` with :meth:`Rocket.add_motor` exactly like a ``SolidMotor``, +``HybridMotor`` or ``LiquidMotor`` would be. + +Visualizing the Cluster Layout +------------------------------- + +The ``draw_cluster_layout`` method plots the position of each motor around +the ring, which is useful to double-check the ``number`` and ``radius`` +parameters before running a simulation: + +.. jupyter-execute:: + + cluster_motor.draw_cluster_layout(rocket_radius=0.15) + +.. tip:: + + Passing ``rocket_radius`` draws the rocket's outer tube as a dashed + circle, which helps confirm that the motors fit inside the airframe. diff --git a/docs/user/motors/tanks.rst b/docs/user/motors/tanks.rst index 2c63cabaf..fe7da2fcb 100644 --- a/docs/user/motors/tanks.rst +++ b/docs/user/motors/tanks.rst @@ -104,7 +104,13 @@ The predefined ``CylindricalTank`` class is easy to use and is defined as such: .. jupyter-execute:: - cylindrical_geometry = CylindricalTank(radius=0.1, height=2.0, spherical_caps=False) + cylindrical_geometry = CylindricalTank(radius_function=0.1, height=2.0, spherical_caps=False) + +.. deprecated:: 1.13.0 + The ``radius`` keyword argument of ``CylindricalTank`` and ``SphericalTank`` + has been renamed to ``radius_function``. Passing ``radius=`` still works but + now raises a ``DeprecationWarning`` and will be removed in v2.0.0. Use + ``radius_function=`` instead (it accepts the same constant radius value). .. note:: The ``spherical_caps`` parameter is optional and defaults to ``False``. If set @@ -116,7 +122,7 @@ The predefined ``SphericalTank`` is defined with: .. jupyter-execute:: - spherical_geometry = SphericalTank(radius=0.1) + spherical_geometry = SphericalTank(radius_function=0.1) .. seealso:: :class:`rocketpy.CylindricalTank` and :class:`rocketpy.SphericalTank` diff --git a/docs/user/parachute_triggers.rst b/docs/user/parachute_triggers.rst new file mode 100644 index 000000000..2799ea00d --- /dev/null +++ b/docs/user/parachute_triggers.rst @@ -0,0 +1,279 @@ +Acceleration-Based Parachute Triggers +====================================== + +RocketPy lets parachute trigger functions access the state derivative +``u_dot`` (which holds the accelerations at indices ``[3:6]``) in addition to +pressure, height and the state vector. This enables avionics-style deployment +logic that mimics how real flight computers use accelerometer (IMU) data to +detect flight phases such as burnout, free-fall or liftoff. + +Overview +-------- + +Built-in string and numeric triggers rely on altitude and vertical velocity. +By writing a **custom trigger function**, you can additionally use acceleration +to implement mission-specific logic, for example: + +- Motor burnout detection (sudden drop in acceleration) +- Apogee detection combining near-zero velocity with downward acceleration +- Free-fall / ballistic coast detection (low total acceleration) +- Liftoff detection (high total acceleration) + +For realistic noisy measurements, attach an :doc:`Accelerometer sensor +` to the rocket and read it inside the +trigger instead of feeding the ideal ``u_dot`` directly. + +Trigger function signatures +--------------------------- + +A custom trigger callable may take **3, 4, or 5** arguments. RocketPy detects +the signature automatically and only computes ``u_dot`` when a trigger asks for +it (so legacy triggers pay no performance cost): + +- ``(pressure, height, state_vector)`` — the classic signature. +- ``(pressure, height, state_vector, u_dot)`` — name the 4th argument + ``u_dot`` (or ``udot``/``acc``/``acceleration``) to receive the derivative; + any other name receives the ``sensors`` list instead. +- ``(pressure, height, state_vector, sensors, u_dot)`` — receive both. + +``state_vector`` is ``[x, y, z, vx, vy, vz, e0, e1, e2, e3, w1, w2, w3]`` and +``u_dot`` is ``[vx, vy, vz, ax, ay, az, ...]``. + +Built-in apogee trigger +----------------------- + +Deploys when the rocket starts descending (vertical velocity becomes negative): + +.. code-block:: python + + rocket.add_parachute( + name="Main", + cd_s=10.0, + trigger="apogee", + sampling_rate=100, + lag=0.5, + ) + +Numeric altitude trigger +------------------------ + +Pass a number to deploy at a fixed height above ground level while descending: + +.. code-block:: python + + rocket.add_parachute( + name="Main", + cd_s=10.0, + trigger=400, # meters above ground level + sampling_rate=100, + lag=0.5, + ) + +Custom trigger: motor burnout +----------------------------- + +Burnout is highly mission-dependent, so it is best expressed as a custom +trigger with user-defined thresholds. + +Logic: detect a drop in vertical or total acceleration once the rocket is above +a minimum height and still ascending. + +.. code-block:: python + + def burnout_trigger_factory( + min_height=5.0, + min_vz=0.5, + az_threshold=-8.0, + total_acc_threshold=2.0, + ): + def burnout_trigger(_pressure, height, state_vector, u_dot): + ax, ay, az = u_dot[3], u_dot[4], u_dot[5] + total_acc = (ax**2 + ay**2 + az**2) ** 0.5 + vz = state_vector[5] + if height < min_height or vz <= min_vz: + return False + return az < az_threshold or total_acc < total_acc_threshold + + return burnout_trigger + +Attach it to a rocket: + +.. code-block:: python + + rocket.add_parachute( + name="Drogue", + cd_s=1.0, + trigger=burnout_trigger_factory( + min_height=10.0, + min_vz=2.0, + az_threshold=-10.0, + total_acc_threshold=3.0, + ), + sampling_rate=100, + lag=1.5, + ) + +Custom trigger: apogee by acceleration +-------------------------------------- + +Logic: near-zero vertical velocity together with downward acceleration. + +.. code-block:: python + + def apogee_acc_trigger(_pressure, _height, state_vector, u_dot): + vz = state_vector[5] + az = u_dot[5] + return abs(vz) < 1.0 and az < -0.1 + +.. code-block:: python + + rocket.add_parachute( + name="Main", + cd_s=10.0, + trigger=apogee_acc_trigger, + sampling_rate=100, + lag=0.5, + ) + +Custom trigger: free-fall +------------------------- + +Logic: low total acceleration while descending above a small height. + +.. code-block:: python + + def freefall_trigger(_pressure, height, state_vector, u_dot): + ax, ay, az = u_dot[3], u_dot[4], u_dot[5] + total_acc = (ax**2 + ay**2 + az**2) ** 0.5 + vz = state_vector[5] + return height > 5.0 and vz < -0.2 and total_acc < 11.5 + +.. code-block:: python + + rocket.add_parachute( + name="Drogue", + cd_s=1.0, + trigger=freefall_trigger, + sampling_rate=100, + lag=1.5, + ) + +Custom trigger: liftoff +----------------------- + +Logic: detect motor ignition by high total acceleration. + +.. code-block:: python + + def liftoff_trigger(_pressure, _height, _state_vector, u_dot): + ax, ay, az = u_dot[3], u_dot[4], u_dot[5] + total_acc = (ax**2 + ay**2 + az**2) ** 0.5 + return total_acc > 15.0 + +.. code-block:: python + + rocket.add_parachute( + name="Lift", + cd_s=0.5, + trigger=liftoff_trigger, + sampling_rate=100, + lag=0.1, + ) + +Custom trigger: using sensor measurements +----------------------------------------- + +A 5-argument trigger receives both the ``sensors`` list and ``u_dot``, so you +can cross-check a noisy accelerometer reading against the ideal derivative. + +.. code-block:: python + + def advanced_trigger(_pressure, _height, _state_vector, sensors, u_dot): + if not sensors: + return False + acc_reading = sensors[0].measurement + if acc_reading is None or len(acc_reading) < 3: + return False + meas_az = acc_reading[2] + az = u_dot[5] + return az < -5.0 and meas_az < -5.0 + +.. code-block:: python + + rocket.add_parachute( + name="Advanced", + cd_s=1.5, + trigger=advanced_trigger, + sampling_rate=100, + ) + +.. note:: + + For realistic IMU behavior, attach a RocketPy sensor with its own noise + model and read it inside the trigger via ``sensors``, instead of relying on + the ideal ``u_dot``. See the :doc:`Sensor Classes + ` for available sensors. + +Full example: dual deployment +----------------------------- + +In RocketPy only one parachute is active at a time, so a dual-deploy avionics +can be reproduced with two custom triggers — a drogue at burnout and a main at +a lower altitude: + +.. code-block:: python + + from rocketpy import Rocket, Flight, Environment + + # Environment and rocket setup + env = Environment(latitude=32.99, longitude=-106.97, elevation=1400) + env.set_atmospheric_model(type="standard_atmosphere") + + rocket = Rocket(...) # configure your rocket (motor, fins, etc.) + + # Drogue: deploy shortly after burnout (acceleration drop while ascending) + def drogue_burnout_trigger(_pressure, height, state_vector, u_dot): + az = u_dot[5] + vz = state_vector[5] + return height > 10 and vz > 1 and az < -8.0 + + rocket.add_parachute( + name="Drogue", + cd_s=1.0, + trigger=drogue_burnout_trigger, + sampling_rate=100, + lag=1.5, + noise=(0, 8.3, 0.5), # pressure-signal noise + ) + + # Main: deploy below 800 m while descending + def main_deploy_trigger(_pressure, height, state_vector, u_dot): + vz = state_vector[5] + az = u_dot[5] + return height < 800 and vz < -5 and az > -15 + + rocket.add_parachute( + name="Main", + cd_s=10.0, + trigger=main_deploy_trigger, + sampling_rate=100, + lag=0.5, + noise=(0, 8.3, 0.5), + ) + + # Flight simulation + flight = Flight( + rocket=rocket, + environment=env, + rail_length=5.2, + inclination=85, + heading=0, + ) + flight.all_info() + +See Also +-------- + +- :doc:`Parachute Class Reference ` +- :doc:`Flight Simulation ` +- :doc:`Sensors ` diff --git a/docs/user/rocket/rocket_axes.rst b/docs/user/rocket/rocket_axes.rst index 56fe17cad..aa99cb231 100644 --- a/docs/user/rocket/rocket_axes.rst +++ b/docs/user/rocket/rocket_axes.rst @@ -61,6 +61,8 @@ The following figure shows the two possibilities for the user input coordinate s the same as the **Body Axes Coordinate System**. The origin of the coordinate \ system may still be different. +.. _angular_position: + Angular Position Inputs ~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/user/rocket/rocket_usage.rst b/docs/user/rocket/rocket_usage.rst index 3496da6fd..5f8667694 100644 --- a/docs/user/rocket/rocket_usage.rst +++ b/docs/user/rocket/rocket_usage.rst @@ -290,12 +290,25 @@ Optionally, we can also define: - The parachute trigger system lag ``lag``. - The parachute trigger system noise ``noise``. +.. note:: + + Since v1.13.0, :class:`~rocketpy.Parachute` is an **abstract base class** + and can no longer be instantiated directly. Instead, instantiate a concrete + parachute model such as :class:`~rocketpy.HemisphericalParachute` (used + below), which derives its geometry-dependent quantities (e.g. the added + mass during descent) from the parachute ``radius`` and ``height``. As a + convenience shortcut, ``Rocket.add_parachute(...)`` can still be called with + keyword arguments (``name``, ``cd_s``, ``trigger``, ...) and will build a + hemispherical parachute for you. + Lets add two parachutes to the rocket, one that will be deployed at apogee and another that will be deployed at 800 meters above ground level: .. jupyter-execute:: - main = calisto.add_parachute( + from rocketpy import HemisphericalParachute + + main = HemisphericalParachute( name="Main", cd_s=10.0, trigger=800, @@ -307,7 +320,7 @@ apogee and another that will be deployed at 800 meters above ground level: porosity=0.0432, ) - drogue = calisto.add_parachute( + drogue = HemisphericalParachute( name="Drogue", cd_s=1.0, trigger="apogee", @@ -318,6 +331,8 @@ apogee and another that will be deployed at 800 meters above ground level: height=1.5, porosity=0.0432, ) + calisto.add_parachute(parachute = main) + calisto.add_parachute(parachute = drogue) .. seealso:: @@ -431,6 +446,18 @@ First, lets guarantee that the rocket is stable, by plotting the static margin: If it is unreasonably **high**, your rocket is **super stable** and the simulation will most likely **fail**. +.. note:: + + RocketPy helps you catch this automatically: if the static margin is + **negative at motor ignition**, an + :class:`~rocketpy.exceptions.UnstableRocketWarning` is issued when the + rocket is used in a simulation. The check is skipped when the rocket has + any ``GenericSurface`` aerodynamic surfaces, since their lift coefficient + derivative is not accounted for in the center of pressure calculation, + which makes the static margin unreliable in that case. See + :doc:`/reference/classes/exceptions` for the full list of RocketPy + exceptions and warnings. + The lets check all the information available about the rocket: .. jupyter-execute:: diff --git a/pyproject.toml b/pyproject.toml index 4f1ecced4..35862cb9a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "rocketpy" -version = "1.12.1" +version = "1.13.0" description="Advanced 6-DOF trajectory simulation for High-Power Rocketry." dynamic = ["dependencies"] readme = "README.md" @@ -34,6 +34,9 @@ build-backend = "setuptools.build_meta" [tool.setuptools] packages = { find = { where = ["."], include = ["rocketpy*"] } } +[tool.setuptools.package-data] +"rocketpy.plots" = ["assets/*.stl"] + [tool.setuptools.dynamic] dependencies = { file = ["requirements.txt"] } @@ -61,14 +64,18 @@ env-analysis = [ ] monte-carlo = [ - "imageio", + "imageio", "multiprocess>=0.70", "statsmodels", "prettytable", "contextily>=1.0.0; python_version < '3.14'", ] -all = ["rocketpy[env-analysis]", "rocketpy[monte-carlo]"] +animation = [ + "vedo>=2024.5.1" +] + +all = ["rocketpy[env-analysis]", "rocketpy[monte-carlo]", "rocketpy[animation]"] [tool.coverage.report] diff --git a/requirements-optional.txt b/requirements-optional.txt index 58ed1030b..2961946ca 100644 --- a/requirements-optional.txt +++ b/requirements-optional.txt @@ -6,4 +6,5 @@ timezonefinder imageio multiprocess>=0.70 statsmodels -prettytable \ No newline at end of file +prettytable +vedo>=2024.5.1 \ No newline at end of file diff --git a/rocketpy/__init__.py b/rocketpy/__init__.py index 852a16aef..05c800094 100644 --- a/rocketpy/__init__.py +++ b/rocketpy/__init__.py @@ -1,5 +1,10 @@ from .control import _Controller from .environment import Environment, EnvironmentAnalysis +from .exceptions import ( + InvalidInertiaError, + InvalidParameterError, + UnstableRocketWarning, +) from .mathutils import ( Function, PiecewiseFunction, @@ -18,6 +23,7 @@ MassFlowRateBasedTank, Motor, PointMassMotor, + RingClusterMotor, SolidMotor, SphericalTank, Tank, @@ -29,10 +35,14 @@ AeroSurface, AirBrakes, Components, + EllipticalFin, EllipticalFins, + Fin, Fins, + FreeFormFin, FreeFormFins, GenericSurface, + HemisphericalParachute, LinearGenericSurface, NoseCone, Parachute, @@ -40,6 +50,7 @@ RailButtons, Rocket, Tail, + TrapezoidalFin, TrapezoidalFins, ) from .sensitivity import SensitivityModel @@ -58,3 +69,8 @@ StochasticTail, StochasticTrapezoidalFins, ) + +# Imported last: utilities pulls in Environment/Rocket/encoders, which are only +# fully available once the imports above have run. Exposes +# ``rocketpy.utilities`` (including ``enable_logging``) on ``import rocketpy``. +from . import utilities diff --git a/rocketpy/_encoders.py b/rocketpy/_encoders.py index 58eeae809..669034636 100644 --- a/rocketpy/_encoders.py +++ b/rocketpy/_encoders.py @@ -1,6 +1,7 @@ """Defines a custom JSON encoder for RocketPy objects.""" import json +import warnings from datetime import datetime from importlib import import_module @@ -133,7 +134,13 @@ def object_hook(self, obj): if hash_ is not None: setattr(new_obj, "__rpy_hash", hash_) return new_obj - except (ImportError, AttributeError): + except (ImportError, AttributeError) as exc: + warnings.warn( + "Could not reconstruct a RocketPy object from the stored " + f"signature {signature!r}: {exc}. Returning the raw data " + "dictionary instead; the loaded object may be incomplete.", + stacklevel=2, + ) return obj else: return obj @@ -160,6 +167,7 @@ def set_minimal_flight_attributes(flight, obj): "apogee_time", "apogee", "parachute_events", + "parachutes_info", "impact_state", "impact_velocity", "x_impact", @@ -238,10 +246,23 @@ def get_class_from_signature(signature): type Class defined by the signature. """ - module = import_module(signature["module"]) + module_name = signature["module"] + name = signature["name"] + + # Backward compatibility: the parachute module was moved to the + # ``rocketpy.rocket.parachutes`` subpackage and the old concrete + # ``Parachute`` class became an abstract base, with the hemispherical model + # split out. Remap the legacy signature so ``.rpy`` files saved with older + # versions reconstruct as a concrete ``HemisphericalParachute`` instead of + # silently falling back to a raw dictionary. + if module_name == "rocketpy.rocket.parachute" and name == "Parachute": + module_name = "rocketpy.rocket.parachutes.hemispherical_parachute" + name = "HemisphericalParachute" + + module = import_module(module_name) inner_class = None - for class_ in signature["name"].split("."): + for class_ in name.split("."): inner_class = getattr(module, class_) return inner_class diff --git a/rocketpy/control/controller.py b/rocketpy/control/controller.py index e81e70915..266389fa3 100644 --- a/rocketpy/control/controller.py +++ b/rocketpy/control/controller.py @@ -17,7 +17,7 @@ def __init__( self, interactive_objects, controller_function, - sampling_rate, + sampling_rate=None, initial_observed_variables=None, name="Controller", ): @@ -38,16 +38,19 @@ def __init__( This function is expected to take the following arguments, in order: 1. `time` (float): The current simulation time in seconds. - 2. `sampling_rate` (float): The rate at which the controller - function is called, measured in Hertz (Hz). + 2. `sampling_rate` (float or None): The rate at which the controller + function is called, measured in Hertz (Hz). It is None for + continuous controllers (called every solver step), so any + `1 / sampling_rate` computation must guard against None. 3. `state` (list): The state vector of the simulation, structured as `[x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]`. 4. `state_history` (list): A record of the rocket's state at each - step throughout the simulation. The state_history is organized as - a list of lists, with each sublist containing a state vector. The - last item in the list always corresponds to the previous state - vector, providing a chronological sequence of the rocket's - evolving states. + step throughout the simulation. It is organized as a list of + lists, ordered oldest to newest, where each sublist is a + *time-prefixed* state row `[t, x, y, z, vx, vy, vz, e0, e1, e2, + e3, wx, wy, wz]` (i.e. the same layout as `Flight.solution`, one + leading `time` element ahead of the `state` layout in item 3). + The last item corresponds to the most recent recorded step. 5. `observed_variables` (list): A list containing the variables that the controller function returns. The return of each controller function call is appended to the observed_variables list. The @@ -71,12 +74,14 @@ def __init__( objects as needed. The function return statement can be used to save relevant information in the `observed_variables` list. - .. note:: The function will be called according to the sampling rate - specified. - sampling_rate : float + .. note:: The function will be called according to the sampling + rate specified. If `sampling_rate` is None, the controller + function is called at every solver step of the simulation. + sampling_rate : float, optional The sampling rate of the controller function in Hertz (Hz). This means that the controller function will be called every - `1/sampling_rate` seconds. + `1/sampling_rate` seconds. If None, it is treated as a + continuous controller and called at every solver step. initial_observed_variables : list, optional A list of the initial values of the variables that the controller function returns. This list is used to initialize the @@ -178,10 +183,12 @@ def __call__(self, time, state_vector, state_history, sensors, environment): `[x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]`. state_history : list - A list containing the state history of the simulation. The state - history is a list of every state vector of every step of the - simulation. The state history is a list of lists, where each - sublist is a state vector and is ordered from oldest to newest. + A list containing the state history of the simulation, ordered + oldest to newest. Each sublist is a *time-prefixed* state row + `[t, x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]` (the same + layout as `Flight.solution`, with a leading `time` element ahead of + the `state_vector` layout). The last item is the most recent + recorded step. sensors : list A list of sensors that are attached to the rocket. The most recent measurements of the sensors are provided with the @@ -208,7 +215,15 @@ def __call__(self, time, state_vector, state_history, sensors, environment): if observed_variables is not None: self.observed_variables.append(observed_variables) + @property + def is_continuous(self): + """bool: True if the controller runs at every solver step (i.e. + ``sampling_rate`` is None), False if it is sampled at a fixed rate.""" + return self.sampling_rate is None + def __str__(self): + if self.is_continuous: + return f"Controller '{self.name}' with continuous sampling." return f"Controller '{self.name}' with sampling rate {self.sampling_rate} Hz." def info(self): diff --git a/rocketpy/environment/environment.py b/rocketpy/environment/environment.py index 8e379800c..d63f50c61 100644 --- a/rocketpy/environment/environment.py +++ b/rocketpy/environment/environment.py @@ -1,6 +1,7 @@ # pylint: disable=too-many-public-methods, too-many-instance-attributes import bisect import json +import logging import re import warnings from collections import namedtuple @@ -11,10 +12,12 @@ import pytz from rocketpy.environment.fetchers import ( + fetch_aigfs_file_return_dataset, fetch_atmospheric_data_from_windy, fetch_gefs_ensemble, fetch_gfs_file_return_dataset, fetch_hiresw_file_return_dataset, + fetch_hrrr_file_return_dataset, fetch_nam_file_return_dataset, fetch_open_elevation, fetch_rap_file_return_dataset, @@ -45,6 +48,8 @@ geopotential_height_to_geometric_height, ) +logger = logging.getLogger(__name__) + class Environment: """Keeps all environment information stored, such as wind and temperature @@ -369,9 +374,11 @@ def __initialize_constants(self): self.__weather_model_map = WeatherModelMapping() self.__atm_type_file_to_function_map = { "forecast": { + "AIGFS": fetch_aigfs_file_return_dataset, "GFS": fetch_gfs_file_return_dataset, "NAM": fetch_nam_file_return_dataset, "RAP": fetch_rap_file_return_dataset, + "HRRR": fetch_hrrr_file_return_dataset, "HIRESW": fetch_hiresw_file_return_dataset, }, "ensemble": { @@ -533,20 +540,42 @@ def __set_wind_speed_function(self, source): interpolation="linear", ) + def __set_wind_angle_function(self, source, attribute, output): + """Set ``attribute`` (e.g. ``wind_direction``) as a Function of height. + For 2D-array sources the angles are unwrapped across the 360/0 boundary + before linear interpolation, avoiding spurious spikes near the wrap.""" + if isinstance(source, (np.ndarray, list, tuple)) and np.ndim(source) == 2: + array = np.asarray(source) + unwrapped_deg = np.rad2deg(np.unwrap(np.deg2rad(array[:, 1]))) + unwrapped = Function( + np.column_stack((array[:, 0], unwrapped_deg)), + inputs="Height Above Sea Level (m)", + outputs=output, + interpolation="linear", + ) + setattr(self, f"{attribute}_unwrapped", unwrapped) + source = Function( + lambda h: unwrapped(h) % 360, + inputs="Height Above Sea Level (m)", + outputs=output, + ) + else: + source = Function( + source, + inputs="Height Above Sea Level (m)", + outputs=output, + interpolation="linear", + ) + setattr(self, attribute, source) + def __set_wind_direction_function(self, source): - self.wind_direction = Function( - source, - inputs="Height Above Sea Level (m)", - outputs="Wind Direction (Deg True)", - interpolation="linear", + self.__set_wind_angle_function( + source, "wind_direction", "Wind Direction (Deg True)" ) def __set_wind_heading_function(self, source): - self.wind_heading = Function( - source, - inputs="Height Above Sea Level (m)", - outputs="Wind Heading (Deg True)", - interpolation="linear", + self.__set_wind_angle_function( + source, "wind_heading", "Wind Heading (Deg True)" ) def __reset_barometric_height_function(self): @@ -665,12 +694,13 @@ def __resolve_dictionary_for_dataset(self, dictionary, dataset): def __validate_dictionary(self, file, dictionary): # removed CMC until it is fixed. available_models = [ + "AIGFS", "GFS", "NAM", "RAP", + "HRRR", "HIRESW", "GEFS", - "ERA5", "MERRA2", ] if isinstance(dictionary, str): @@ -971,7 +1001,7 @@ def set_elevation(self, elevation="Open-Elevation"): self.elevation = elevation else: self.elevation = fetch_open_elevation(self.latitude, self.longitude) - print(f"Elevation received: {self.elevation} m") + logger.info("Elevation received: %.2f m", self.elevation) def set_topographic_profile( # pylint: disable=redefined-builtin, unused-argument self, type, file, dictionary="netCDF4", crs=None @@ -1010,14 +1040,13 @@ def set_topographic_profile( # pylint: disable=redefined-builtin, unused-argume # crsArray = nasa_dem.variables['crs'][:].tolist(). self.topographic_profile_activated = True - print("Region covered by the Topographical file: ") - print( - f"Latitude from {self.elev_lat_array[-1]:.6f}° to " - f"{self.elev_lat_array[0]:.6f}°" - ) - print( - f"Longitude from {self.elev_lon_array[0]:.6f}° to " - f"{self.elev_lon_array[-1]:.6f}°" + logger.debug( + "Topographical file coverage: lat [%.6f°, %.6f°], " + "lon [%.6f°, %.6f°]", + self.elev_lat_array[-1], + self.elev_lat_array[0], + self.elev_lon_array[0], + self.elev_lon_array[-1], ) def get_elevation_from_topographic_profile(self, lat, lon): @@ -1105,6 +1134,51 @@ def get_elevation_from_topographic_profile(self, lat, lon): return elevation + def __determine_pressure_conversion_factor( + self, pressure_conversion_factor, input_dict, input_file + ): + """Determine the numeric conversion factor (pressure -> Pa) based on + either the user's explicit input or auto-detection. + + Parameters + ---------- + pressure_conversion_factor : string, int, float or None + The user-supplied pressure conversion factor. + input_dict : string or None + The upper-case string name of the dictionary. + input_file : string or None + The upper-case string name of the file/model shortcut. + + Returns + ------- + conversion_factor : float, int or None + The numeric conversion factor to Pascal, or None if it needs to be + read from the file's units attribute. + """ + if pressure_conversion_factor is not None: + # User explicitly supplied a value — honour it. + if isinstance(pressure_conversion_factor, str): + return ( + 100 if pressure_conversion_factor.lower() in ("mbar", "hpa") else 1 + ) + return pressure_conversion_factor + + # Auto-detect. Primary source: known-model lookup table. + # Fallback: units attribute inside the file. + # THREDDS (UCAR) models expose pressure on the 'isobaric' coordinate in + # Pa; NOMADS-GrADS models (GEFS, HIRESW) expose it on the 'lev' + # coordinate in hPa/millibars and must be scaled by 100. + _hpa_dicts = {"ECMWF", "ECMWF_V0", "MERRA2"} + _hpa_files = {"GEFS", "HIRESW"} + _pa_files = {"GFS", "NAM", "RAP", "HRRR", "AIGFS"} + if input_dict in _hpa_dicts or input_file in _hpa_dicts: + return 100 + if input_file in _hpa_files: + return 100 + if input_file in _pa_files: + return 1 + return None + def set_atmospheric_model( # pylint: disable=too-many-statements self, type, # pylint: disable=redefined-builtin @@ -1114,6 +1188,7 @@ def set_atmospheric_model( # pylint: disable=too-many-statements temperature=None, wind_u=0, wind_v=0, + pressure_conversion_factor=None, ): """Define the atmospheric model for this Environment. @@ -1132,40 +1207,38 @@ def set_atmospheric_model( # pylint: disable=too-many-statements - ``"windy"``: one of ``"ECMWF"``, ``"GFS"``, ``"ICON"`` or ``"ICONEU"``. - ``"forecast"``: local path, OPeNDAP URL, open - ``netCDF4.Dataset``, or one of ``"GFS"``, ``"NAM"`` or ``"RAP"`` - for the latest available forecast. + ``netCDF4.Dataset``, or one of ``"AIGFS"``, ``"GFS"``, + ``"NAM"``, ``"RAP"``, ``"HRRR"`` or ``"HIRESW"`` for the + latest available forecast. - ``"reanalysis"``: local path, OPeNDAP URL, or open ``netCDF4.Dataset``. - ``"ensemble"``: local path, OPeNDAP URL, open ``netCDF4.Dataset``, or ``"GEFS"`` for the latest available forecast. dictionary : dict | str, optional - Variable-name mapping for ``"forecast"``, ``"reanalysis"`` and - ``"ensemble"``. It may be a custom dictionary or a built-in - mapping name (for example: ``"ECMWF"``, ``"ECMWF_v0"``, - ``"NOAA"``, ``"GFS"``, ``"NAM"``, ``"RAP"``, ``"HIRESW"``, - ``"GEFS"``, ``"MERRA2"`` or ``"CMC"``). - - If ``dictionary`` is omitted and ``file`` is one of RocketPy's - latest-model shortcuts, the matching built-in mapping is selected - automatically. For ensemble datasets, the mapping must include the - ensemble dimension key (typically ``"ensemble"``). - + A dictionary mapping variables in the netCDF4 file to standard + names. Meaning depends on ``type``: + + - ``"standard_atmosphere"``, ``"custom_atmosphere"`` and + ``"wyoming_sounding"``: ignored. + - ``"windy"``: ignored. + - ``"forecast"``, ``"reanalysis"`` and ``"ensemble"``: local + dictionary, or one of the built-in mappings (e.g. ``"ECMWF"``, + ``"GFS"``, ``"MERRA2"``, ``"RAP"``, ``"HRRR"``, etc.) corresponding + to the file structure. pressure : float, string, array, callable, optional - This defines the atmospheric pressure profile. - Should be given if the type parameter is ``custom_atmosphere``. If not, - than the the ``Standard Atmosphere`` pressure will be used. - If a float is given, it will define a constant pressure - profile. The float should be in units of Pa. - If a string is given, it should point to a `.CSV` file - containing at most one header line and two columns of data. - The first column must be the geometric height above sea level in - meters while the second column must be the pressure in Pa. - If an array is given, it is expected to be a list or array - of coordinates (height in meters, pressure in Pa). - Finally, a callable or function is also accepted. The - function should take one argument, the height above sea - level in meters and return a corresponding pressure in Pa. + This defines the atmospheric pressure profile. Should be given if + the type parameter is ``custom_atmosphere``. If not, than the the + ``Standard Atmosphere`` pressure will be used. If a float is given, + it will define a constant pressure profile. The float should be in + units of Pa. If a string is given, it should point to a `.CSV` file + containing at most one header line and two columns of data. The first + column must be the geometric height above sea level in meters while + the second column must be the pressure in Pa. If an array is given, + it is expected to be a list or array of coordinates (height in + meters, pressure in Pa). Finally, a callable or function is also + accepted. The function should take one argument, the height above + sea level in meters and return a corresponding pressure in Pa. temperature : float, string, array, callable, optional This defines the atmospheric temperature profile. Should be given if the type parameter is ``custom_atmosphere``. If not, than the the @@ -1208,6 +1281,16 @@ def set_atmospheric_model( # pylint: disable=too-many-statements m/s). Finally, a callable or function is also accepted. The function should take one argument, the height above sea level in meters and return a corresponding wind-v in m/s. + pressure_conversion_factor : string, int, float, optional + This defines the pressure conversion factor to Pa when type is + ``forecast``, ``reanalysis``, or ``ensemble``. The pressure unit + from the data may not be in Pascal, so the correction is necessary. + Valid strings are ``"mbar"``, ``"hPa"``, or ``"Pa"``, or a strictly + positive number if using a custom pressure unit. If None (the default), + the conversion factor will be automatically detected based on the + model name (e.g. ERA5/ECMWF/MERRA2 reanalysis files commonly use hPa, + while online GFS/NAM/RAP/HRRR forecast models use Pa) or, if + unavailable, by reading the pressure unit attribute from the file. Returns ------- @@ -1257,6 +1340,35 @@ def set_atmospheric_model( # pylint: disable=too-many-statements case "windy": self.process_windy_atmosphere(file) case "forecast" | "reanalysis" | "ensemble": + # Capture the user-supplied names before __validate_dictionary + # converts them to dicts, so they can drive auto-detection. + _input_dict = ( + dictionary.upper() if isinstance(dictionary, str) else None + ) + _input_file = file.upper() if isinstance(file, str) else None + + # Validate format of user-supplied value (if any). + # When None, auto-detection runs after dictionary resolution. + if pressure_conversion_factor is not None: + if not isinstance(pressure_conversion_factor, (float, int, str)): + raise ValueError( + "Argument 'pressure_conversion_factor' must be numeric or a standard pressure unit ('mbar', 'hPa', 'Pa')!" + ) + if isinstance(pressure_conversion_factor, (float, int)): + if pressure_conversion_factor <= 0: + raise ValueError( + "Argument 'pressure_conversion_factor' must be strictly positive!" + ) + if isinstance(pressure_conversion_factor, str): + if pressure_conversion_factor.lower() not in ( + "mbar", + "hpa", + "pa", + ): + raise ValueError( + "Argument 'pressure_conversion_factor' unit must be a standard pressure unit ('mbar', 'hPa', 'Pa')!" + ) + if isinstance(file, str): shortcut_map = self.__atm_type_file_to_function_map.get(type, {}) matching_shortcut = next( @@ -1288,6 +1400,12 @@ def set_atmospheric_model( # pylint: disable=too-many-statements ) dictionary = self.__validate_dictionary(file, dictionary) + + # Determine the numeric conversion factor (pressure → Pa). + conversion_factor = self.__determine_pressure_conversion_factor( + pressure_conversion_factor, _input_dict, _input_file + ) + try: fetch_function = self.__atm_type_file_to_function_map[type][file] except KeyError: @@ -1297,9 +1415,35 @@ def set_atmospheric_model( # pylint: disable=too-many-statements dataset = fetch_function() if fetch_function is not None else file if type in ["forecast", "reanalysis"]: - self.process_forecast_reanalysis(dataset, dictionary) + self.process_forecast_reanalysis( + dataset, dictionary, conversion_factor=conversion_factor + ) else: - self.process_ensemble(dataset, dictionary) + self.process_ensemble(dataset, dictionary, conversion_factor) + + ground_pressure = self.pressure(self.elevation) + if not 30000 <= ground_pressure <= 120_000: + if pressure_conversion_factor is None: + hint = ( + "The unit was auto-detected from the file's pressure " + "level variable or model name, but the result is still out of range. " + "Override by passing pressure_conversion_factor explicitly " + "('hPa' for ERA5/ECMWF/MERRA2 files, 'Pa' for online " + "forecast models such as GFS, NAM, RAP, HRRR)." + ) + else: + hint = ( + f"pressure_conversion_factor='{pressure_conversion_factor}' " + f"may be wrong. ERA5/ECMWF/MERRA2 reanalysis files store pressure " + f"in hPa — use 'hPa'. Online forecast models " + f"(GFS, NAM, RAP, HRRR) store pressure in Pa — use 'Pa'." + ) + warnings.warn( + f"Ground-level pressure is {ground_pressure:.0f} Pa, which is " + f"outside the expected range [30 000 Pa, 120 000 Pa]. {hint}", + UserWarning, + stacklevel=2, + ) case _: # pragma: no cover raise ValueError(f"Unknown model type '{type}'.") @@ -1610,11 +1754,11 @@ def process_wyoming_sounding(self, file): # pylint: disable=too-many-statements Example: - http://weather.uwyo.edu/cgi-bin/sounding?region=samer&TYPE=TEXT%3ALIST&YEAR=2019&MONTH=02&FROM=0200&TO=0200&STNM=82599 + https://weather.uwyo.edu/wsgi/sounding?datetime=2019-02-05%2012:00:00&id=83779&type=TEXT:LIST Notes ----- - More can be found at: http://weather.uwyo.edu/upperair/sounding.html. + More can be found at: https://weather.uwyo.edu/upperair/sounding.shtml. Returns ------- @@ -1626,7 +1770,9 @@ def process_wyoming_sounding(self, file): # pylint: disable=too-many-statements # Process Wyoming Sounding by finding data table and station info response_split_text = re.split("(<.{0,1}PRE>)", response.text) data_table = response_split_text[2] - station_info = response_split_text[6] + # Legacy CGI pages had extra
 blocks with station information;
+        # current WSGI pages have a single block with the data table only.
+        station_info = response_split_text[6] if len(response_split_text) > 6 else None
 
         # Transform data table into np array
         data_array = []
@@ -1648,8 +1794,10 @@ def process_wyoming_sounding(self, file):  # pylint: disable=too-many-statements
         self.__set_temperature_function(data_array[:, (1, 2)])
 
         # Retrieve wind-u and wind-v from data array
-        ## Converts Knots to m/s
-        data_array[:, 7] = data_array[:, 7] * 1.852 / 3.6
+        ## Legacy pages report wind speed as SKNT (knots); current WSGI pages
+        ## report it as SPED (m/s) and need no conversion.
+        if "SKNT" in data_table.split("\n")[2]:
+            data_array[:, 7] = data_array[:, 7] * 1.852 / 3.6  # Knots to m/s
         ## Convert wind direction to wind heading
         data_array[:, 5] = (data_array[:, 6] + 180) % 360
         data_array[:, 3] = data_array[:, 7] * np.sin(data_array[:, 5] * np.pi / 180)
@@ -1667,18 +1815,21 @@ def process_wyoming_sounding(self, file):  # pylint: disable=too-many-statements
         self.__set_wind_direction_function(data_array[:, (1, 6)])
         self.__set_wind_speed_function(data_array[:, (1, 7)])
 
-        # Retrieve station elevation from station info
-        station_elevation_text = station_info.split("\n")[6]
-
-        # Convert station elevation text into float value
-        self.elevation = float(
-            re.findall(r"[0-9]+\.[0-9]+|[0-9]+", station_elevation_text)[0]
-        )
+        # Retrieve station elevation
+        if station_info is not None:
+            # Legacy pages: read it from the station information block
+            station_elevation_text = station_info.split("\n")[6]
+            self.elevation = float(
+                re.findall(r"[0-9]+\.[0-9]+|[0-9]+", station_elevation_text)[0]
+            )
+        else:
+            # Current WSGI pages: use the surface (first) level height
+            self.elevation = float(data_array[0, 1])
 
         # Save maximum expected height
         self._max_expected_height = data_array[-1, 1]
 
-    def process_forecast_reanalysis(self, file, dictionary):  # pylint: disable=too-many-locals,too-many-statements
+    def process_forecast_reanalysis(self, file, dictionary, conversion_factor):  # pylint: disable=too-many-locals,too-many-statements
         """Import and process atmospheric data from weather forecasts
         and reanalysis given as ``netCDF`` or ``OPeNDAP`` files.
         Sets pressure, temperature, wind-u and wind-v
@@ -1730,6 +1881,9 @@ def process_forecast_reanalysis(self, file, dictionary):  # pylint: disable=too-
                     "u_wind": "ugrdprs",
                     "v_wind": "vgrdprs",
                 }
+        conversion_factor : float, int
+            Specifies the factor by which the pressure will be multiplied
+            in order to transform it to Pascal.
 
         Returns
         -------
@@ -1761,13 +1915,17 @@ def process_forecast_reanalysis(self, file, dictionary):  # pylint: disable=too-
         # Some THREDDS datasets use projected x/y coordinates.
         if dictionary.get("projection") is not None:
             projection_variable = data.variables[dictionary["projection"]]
-            x_units = getattr(lon_array, "units", "m")
-            target_lon, target_lat = geodesic_to_lambert_conformal(
-                self.latitude,
-                self.longitude,
-                projection_variable,
-                x_units=x_units,
-            )
+            if dictionary.get("projection") == "LambertConformal_Projection":
+                x_units = getattr(lon_array, "units", "m")
+                target_lon, target_lat = geodesic_to_lambert_conformal(
+                    self.latitude,
+                    self.longitude,
+                    projection_variable,
+                    x_units=x_units,
+                )
+            else:
+                target_lon = self.longitude
+                target_lat = self.latitude
         else:
             target_lon = self.longitude
             target_lat = self.latitude
@@ -1778,7 +1936,7 @@ def process_forecast_reanalysis(self, file, dictionary):  # pylint: disable=too-
         _, lat_index = find_latitude_index(target_lat, lat_array)
 
         # Get pressure level data from file
-        levels = get_pressure_levels_from_file(data, dictionary)
+        levels = get_pressure_levels_from_file(data, dictionary, conversion_factor)
 
         # Get geopotential data from file
         try:
@@ -1979,7 +2137,7 @@ def process_forecast_reanalysis(self, file, dictionary):  # pylint: disable=too-
         # Close weather data
         data.close()
 
-    def process_ensemble(self, file, dictionary):  # pylint: disable=too-many-locals,too-many-statements
+    def process_ensemble(self, file, dictionary, conversion_factor):  # pylint: disable=too-many-locals,too-many-statements
         """Import and process atmospheric data from weather ensembles
         given as ``netCDF`` or ``OPeNDAP`` files. Sets pressure, temperature,
         wind-u and wind-v profiles and surface elevation obtained from a weather
@@ -2030,6 +2188,9 @@ def process_ensemble(self, file, dictionary):  # pylint: disable=too-many-locals
                     "u_wind": "ugrdprs",
                     "v_wind": "vgrdprs",
                 }
+        conversion_factor : float, int
+            Specifies the factor by which the pressure will be multiplied
+            in order to transform it to Pascal.
 
         See also
         --------
@@ -2065,13 +2226,17 @@ class for some dictionary examples.
         # coordinate system before locating the nearest grid cell.
         if dictionary.get("projection") is not None:
             projection_variable = data.variables[dictionary["projection"]]
-            x_units = getattr(lon_array, "units", "m")
-            target_lon, target_lat = geodesic_to_lambert_conformal(
-                self.latitude,
-                self.longitude,
-                projection_variable,
-                x_units=x_units,
-            )
+            if dictionary.get("projection") == "LambertConformal_Projection":
+                x_units = getattr(lon_array, "units", "m")
+                target_lon, target_lat = geodesic_to_lambert_conformal(
+                    self.latitude,
+                    self.longitude,
+                    projection_variable,
+                    x_units=x_units,
+                )
+            else:
+                target_lon = self.longitude
+                target_lat = self.latitude
         else:
             target_lon = self.longitude
             target_lat = self.latitude
@@ -2090,7 +2255,7 @@ class for some dictionary examples.
             num_members = 1
 
         # Get pressure level data from file
-        levels = get_pressure_levels_from_file(data, dictionary)
+        levels = get_pressure_levels_from_file(data, dictionary, conversion_factor)
 
         inverse_dictionary = {v: k for k, v in dictionary.items()}
         param_dictionary = {
@@ -2609,9 +2774,10 @@ def export_environment(self, filename="environment"):
 
         with open(filename + ".json", "w") as f:
             json.dump(export_env_dictionary, f, sort_keys=False, indent=4, default=str)
-        print(
-            f"Your Environment file was saved at '{filename}.json'. You can use "
-            "it in the future by using the custom_atmosphere atmospheric model."
+        logger.info(
+            "Your Environment file was saved at '%s.json'. "
+            "You can use it in the future by using the custom_atmosphere atmospheric model.",
+            filename,
         )
 
     def set_earth_geometry(self, datum):
@@ -2844,6 +3010,6 @@ def from_dict(cls, data):  # pylint: disable=too-many-statements
 
     results = doctest.testmod()
     if results.failed < 1:
-        print(f"All the {results.attempted} tests passed!")
+        logger.debug("All the %d tests passed!", results.attempted)
     else:
-        print(f"{results.failed} out of {results.attempted} tests failed.")
+        logger.error("%d out of %d tests failed.", results.failed, results.attempted)
diff --git a/rocketpy/environment/environment_analysis.py b/rocketpy/environment/environment_analysis.py
index 13589078e..e4dcbd021 100644
--- a/rocketpy/environment/environment_analysis.py
+++ b/rocketpy/environment/environment_analysis.py
@@ -2,6 +2,7 @@
 import copy
 import datetime
 import json
+import logging
 import warnings
 from collections import defaultdict
 from functools import cached_property
@@ -24,6 +25,8 @@
 from ..units import convert_units
 from .environment import Environment
 
+logger = logging.getLogger(__name__)
+
 # TODO: the average_wind_speed_profile_by_hour and similar methods could be more abstract than currently are
 
 
@@ -236,13 +239,15 @@ def __check_requirements(self):
                 check_requirement_version(module_name, version)
             except (ValueError, ImportError) as e:
                 has_error = True
-                print(
-                    f"The following error occurred while importing {module_name}: {e}"
+                logger.error(
+                    "The following error occurred while importing %s: %s",
+                    module_name,
+                    e,
                 )
         if has_error:
-            print(
+            logger.error(
                 "Given the above errors, some methods may not work. Please run "
-                + "'pip install rocketpy[env_analysis]' to install extra requirements."
+                "'pip install rocketpy[env_analysis]' to install extra requirements."
             )
 
     def __init_surface_dictionary(self):
@@ -460,8 +465,6 @@ def __init_data_parsing_units(self):
             "height_ASL": "m",
             "pressure": "hPa",
             "temperature": "K",
-            "wind_direction": "deg",
-            "wind_heading": "deg",
             "wind_speed": "m/s",
             "wind_velocity_x": "m/s",
             "wind_velocity_y": "m/s",
@@ -508,8 +511,9 @@ def __init_unit_system(self):
             }
         else:
             # Default to SI
-            print(
-                f"Defaulting to SI unit system, the {self.unit_system_string} was not found."
+            logger.warning(
+                "Defaulting to SI unit system, the '%s' unit system was not found.",
+                self.unit_system_string,
             )
             self.unit_system = {
                 "length": "m",
@@ -570,8 +574,6 @@ def __parse_pressure_level_data(self):
         Must compute the following for each date and hour available in the dataset:
         - pressure = Function(..., inputs="Height Above Ground Level (m)", outputs="Pressure (Pa)")
         - temperature = Function(..., inputs="Height Above Ground Level (m)", outputs="Temperature (K)")
-        - wind_direction = Function(..., inputs="Height Above Ground Level (m)", outputs="Wind Direction (Deg True)")
-        - wind_heading = Function(..., inputs="Height Above Ground Level (m)", outputs="Wind Heading (Deg True)")
         - wind_speed = Function(..., inputs="Height Above Ground Level (m)", outputs="Wind Speed (m/s)")
         - wind_velocity_x = Function(..., inputs="Height Above Ground Level (m)", outputs="Wind Velocity X (m/s)")
         - wind_velocity_y = Function(..., inputs="Height Above Ground Level (m)", outputs="Wind Velocity Y (m/s)")
@@ -722,39 +724,6 @@ def __parse_pressure_level_data(self):
             )
             dictionary[date_string][hour_string]["wind_speed"] = wind_speed_function
 
-            # Create function for wind heading levels
-            wind_heading_array = (
-                np.arctan2(wind_velocity_x_array, wind_velocity_y_array)
-                * (180 / np.pi)
-                % 360
-            )
-
-            wind_heading_points_array = np.array(
-                [height_above_ground_level_array, wind_heading_array]
-            ).T
-            wind_heading_function = Function(
-                wind_heading_points_array,
-                inputs="Height Above Ground Level (m)",
-                outputs="Wind Heading (Deg True)",
-                extrapolation="constant",
-            )
-            dictionary[date_string][hour_string]["wind_heading"] = wind_heading_function
-
-            # Create function for wind direction levels
-            wind_direction_array = (wind_heading_array - 180) % 360
-            wind_direction_points_array = np.array(
-                [height_above_ground_level_array, wind_direction_array]
-            ).T
-            wind_direction_function = Function(
-                wind_direction_points_array,
-                inputs="Height Above Ground Level (m)",
-                outputs="Wind Direction (Deg True)",
-                extrapolation="constant",
-            )
-            dictionary[date_string][hour_string]["wind_direction"] = (
-                wind_direction_function
-            )
-
         return (dictionary, lat0, lat1, lon0, lon1)
 
     @property
@@ -985,8 +954,6 @@ def converted_pressure_level_data(self):
         conversion_dict = {
             "pressure": self.unit_system["pressure"],
             "temperature": self.unit_system["temperature"],
-            "wind_direction": self.unit_system["angle"],
-            "wind_heading": self.unit_system["angle"],
             "wind_speed": self.unit_system["wind_speed"],
             "wind_velocity_x": self.unit_system["wind_speed"],
             "wind_velocity_y": self.unit_system["wind_speed"],
@@ -2843,9 +2810,10 @@ def export_mean_profiles(self, filename="export_env_analysis"):
                     self.export_dictionary, sort_keys=False, indent=4, default=str
                 )
             )
-        print(
-            f"Your Environment Analysis file was saved, check it out: {filename}.json\n"
-            "You can use it to set a `customAtmosphere` atmospheric model"
+        logger.info(
+            "Your Environment Analysis file was saved: %s.json. "
+            "You can use it to set a customAtmosphere atmospheric model.",
+            filename,
         )
 
     @classmethod
@@ -2884,7 +2852,7 @@ def save(self, filename="env_analysis_dict"):
         file = open(filename, "w")  # pylint: disable=consider-using-with
         file.write(encoded_class)
         file.close()
-        print("Your Environment Analysis file was saved, check it out: " + filename)
+        logger.info("Your Environment Analysis file was saved: %s", filename)
 
     def create_environment_object(
         self, gravity=None, date=None, datum="SIRGAS2000", max_expected_height=80000.0
diff --git a/rocketpy/environment/fetchers.py b/rocketpy/environment/fetchers.py
index de63d53ad..740e9818a 100644
--- a/rocketpy/environment/fetchers.py
+++ b/rocketpy/environment/fetchers.py
@@ -3,6 +3,7 @@
 functions may be changed without notice in future feature releases.
 """
 
+import logging
 import re
 import time
 from datetime import datetime, timedelta, timezone
@@ -12,6 +13,8 @@
 
 from rocketpy.tools import exponential_backoff
 
+logger = logging.getLogger(__name__)
+
 MAX_RETRY_DELAY_SECONDS = 600
 
 
@@ -37,7 +40,9 @@ def fetch_open_elevation(lat, lon):
     RuntimeError
         If there is a problem reaching the Open-Elevation API servers.
     """
-    print(f"Fetching elevation from open-elevation.com for lat={lat}, lon={lon}...")
+    logger.debug(
+        "Fetching elevation from open-elevation.com for lat=%s, lon=%s", lat, lon
+    )
     request_url = f"https://api.open-elevation.com/api/v1/lookup?locations={lat},{lon}"
     try:
         response = requests.get(request_url)
@@ -195,6 +200,78 @@ def fetch_rap_file_return_dataset(max_attempts=10, base_delay=2):
     raise RuntimeError("Unable to load latest weather data for RAP through " + file_url)
 
 
+def fetch_hrrr_file_return_dataset(max_attempts=10, base_delay=2):
+    """Fetches the latest HRRR (High-Resolution Rapid Refresh) dataset from
+    the NOAA's GrADS data server using the OpenDAP protocol.
+
+    Parameters
+    ----------
+    max_attempts : int, optional
+        The maximum number of attempts to fetch the dataset. Default is 10.
+    base_delay : int, optional
+        The base delay in seconds between attempts. Default is 2.
+
+    Returns
+    -------
+    netCDF4.Dataset
+        The HRRR dataset.
+
+    Raises
+    ------
+    RuntimeError
+        If unable to load the latest weather data for HRRR.
+    """
+    file_url = "https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/HRRR/CONUS_2p5km/Best"
+    attempt_count = 0
+    while attempt_count < max_attempts:
+        try:
+            return netCDF4.Dataset(file_url)
+        except OSError:
+            attempt_count += 1
+            time.sleep(min(base_delay**attempt_count, MAX_RETRY_DELAY_SECONDS))
+
+    raise RuntimeError(
+        "Unable to load latest weather data for HRRR through " + file_url
+    )
+
+
+def fetch_aigfs_file_return_dataset(max_attempts=10, base_delay=2):
+    """Fetches the latest AIGFS (Artificial Intelligence GFS) dataset from
+    the NOAA's GrADS data server using the OpenDAP protocol.
+
+    Parameters
+    ----------
+    max_attempts : int, optional
+        The maximum number of attempts to fetch the dataset. Default is 10.
+    base_delay : int, optional
+        The base delay in seconds between attempts. Default is 2.
+
+    Returns
+    -------
+    netCDF4.Dataset
+        The AIGFS dataset.
+
+    Raises
+    ------
+    RuntimeError
+        If unable to load the latest weather data for AIGFS.
+    """
+    file_url = (
+        "https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/AIGFS/Global_0p25deg/Best"
+    )
+    attempt_count = 0
+    while attempt_count < max_attempts:
+        try:
+            return netCDF4.Dataset(file_url)
+        except OSError:
+            attempt_count += 1
+            time.sleep(min(base_delay**attempt_count, MAX_RETRY_DELAY_SECONDS))
+
+    raise RuntimeError(
+        "Unable to load latest weather data for AIGFS through " + file_url
+    )
+
+
 def fetch_hiresw_file_return_dataset(max_attempts=10, base_delay=2):
     """Fetches the latest HiResW (High-Resolution Window) dataset from the NOAA's
     GrADS data server using the OpenDAP protocol.
diff --git a/rocketpy/environment/tools.py b/rocketpy/environment/tools.py
index 4a06ef2c4..5e23de0f9 100644
--- a/rocketpy/environment/tools.py
+++ b/rocketpy/environment/tools.py
@@ -5,6 +5,7 @@
 future to improve their performance and usability.
 """
 
+import logging
 import math
 import warnings
 
@@ -13,6 +14,8 @@
 
 from rocketpy.tools import bilinear_interpolation
 
+logger = logging.getLogger(__name__)
+
 ## Wind data functions
 
 
@@ -169,7 +172,7 @@ def geodesic_to_lambert_conformal(lat, lon, projection_variable, x_units="m"):
 ## These functions are meant to be used with netcdf4 datasets
 
 
-def get_pressure_levels_from_file(data, dictionary):
+def get_pressure_levels_from_file(data, dictionary, conversion_factor):
     """Extracts pressure levels from a netCDF4 dataset and converts them to Pa.
 
     Parameters
@@ -178,6 +181,11 @@ def get_pressure_levels_from_file(data, dictionary):
         The netCDF4 dataset containing the pressure level data.
     dictionary : dict
         A dictionary mapping variable names to dataset keys.
+    conversion_factor : float, int, or None
+        Specifies the factor by which the pressure will be multiplied to
+        transform it to Pascal. If ``None``, the factor is auto-detected from
+        the ``units`` attribute of the pressure level variable in the dataset
+        (e.g. ``"millibars"`` or ``"hPa"`` → 100; ``"Pa"`` → 1).
 
     Returns
     -------
@@ -190,8 +198,14 @@ def get_pressure_levels_from_file(data, dictionary):
         If the pressure levels cannot be read from the file.
     """
     try:
-        # Convert mbar to Pa
-        levels = 100 * data.variables[dictionary["level"]][:]
+        level_var = data.variables[dictionary["level"]]
+        if conversion_factor is None:
+            raw_units = getattr(level_var, "units", "").lower().strip()
+            if raw_units in ("hpa", "mbar", "millibars", "hectopascal", "hectopascals"):
+                conversion_factor = 100
+            else:
+                conversion_factor = 1
+        levels = conversion_factor * level_var[:]
     except KeyError as e:
         raise ValueError(
             "Unable to read pressure levels from file. Check file and dictionary."
@@ -839,6 +853,6 @@ def utm_to_geodesic(  # pylint: disable=too-many-locals,too-many-statements
 
     results = doctest.testmod()
     if results.failed < 1:
-        print(f"All the {results.attempted} tests passed!")
+        logger.info("All the %d tests passed!", results.attempted)
     else:
-        print(f"{results.failed} out of {results.attempted} tests failed.")
+        logger.error("%d out of %d tests failed.", results.failed, results.attempted)
diff --git a/rocketpy/environment/weather_model_mapping.py b/rocketpy/environment/weather_model_mapping.py
index b054a35c4..c8617a523 100644
--- a/rocketpy/environment/weather_model_mapping.py
+++ b/rocketpy/environment/weather_model_mapping.py
@@ -48,11 +48,11 @@ class WeatherModelMapping:
         "u_wind": "ugrdprs",
         "v_wind": "vgrdprs",
     }
-    NAM = {
+    AIGFS = {
         "time": "time",
-        "latitude": "y",
-        "longitude": "x",
-        "projection": "LambertConformal_Projection",
+        "latitude": "lat",
+        "longitude": "lon",
+        "projection": "LatLon_Projection",
         "level": "isobaric",
         "temperature": "Temperature_isobaric",
         "surface_geopotential_height": None,
@@ -73,6 +73,19 @@ class WeatherModelMapping:
         "u_wind": "ugrdprs",
         "v_wind": "vgrdprs",
     }
+    NAM = {
+        "time": "time",
+        "latitude": "y",
+        "longitude": "x",
+        "projection": "LambertConformal_Projection",
+        "level": "isobaric",
+        "temperature": "Temperature_isobaric",
+        "surface_geopotential_height": None,
+        "geopotential_height": "Geopotential_height_isobaric",
+        "geopotential": None,
+        "u_wind": "u-component_of_wind_isobaric",
+        "v_wind": "v-component_of_wind_isobaric",
+    }
     ECMWF_v0 = {
         "time": "time",
         "latitude": "latitude",
@@ -148,20 +161,20 @@ class WeatherModelMapping:
         "u_wind": "ugrdprs",
         "v_wind": "vgrdprs",
     }
-    CMC = {
+    HRRR = {
         "time": "time",
-        "latitude": "lat",
-        "longitude": "lon",
-        "level": "lev",
-        "ensemble": "ens",
-        "temperature": "tmpprs",
+        "latitude": "y",
+        "longitude": "x",
+        "projection": "LambertConformal_Projection",
+        "level": "isobaric",
+        "temperature": "Temperature_isobaric",
         "surface_geopotential_height": None,
-        "geopotential_height": "hgtprs",
+        "geopotential_height": "Geopotential_height_isobaric",
         "geopotential": None,
-        "u_wind": "ugrdprs",
-        "v_wind": "vgrdprs",
+        "u_wind": "u-component_of_wind_isobaric",
+        "v_wind": "v-component_of_wind_isobaric",
     }
-    CMC_LEGACY = {
+    CMC = {
         "time": "time",
         "latitude": "lat",
         "longitude": "lon",
@@ -211,17 +224,6 @@ class WeatherModelMapping:
         "u_wind": "ugrdprs",
         "v_wind": "vgrdprs",
     }
-    HIRESW_LEGACY = {
-        "time": "time",
-        "latitude": "lat",
-        "longitude": "lon",
-        "level": "lev",
-        "temperature": "tmpprs",
-        "surface_geopotential_height": "hgtsfc",
-        "geopotential_height": "hgtprs",
-        "u_wind": "ugrdprs",
-        "v_wind": "vgrdprs",
-    }
     MERRA2 = {
         "time": "time",
         "latitude": "lat",
@@ -235,19 +237,6 @@ class WeatherModelMapping:
         "u_wind": "U",
         "v_wind": "V",
     }
-    MERRA2_LEGACY = {
-        "time": "time",
-        "latitude": "lat",
-        "longitude": "lon",
-        "level": "lev",
-        "temperature": "T",
-        "surface_geopotential_height": None,
-        "surface_geopotential": "PHIS",
-        "geopotential_height": "H",
-        "geopotential": None,
-        "u_wind": "U",
-        "v_wind": "V",
-    }
 
     def __init__(self):
         """Build the lookup table with default and legacy mapping aliases."""
@@ -255,6 +244,7 @@ def __init__(self):
         self.all_dictionaries = {
             "GFS": self.GFS,
             "GFS_LEGACY": self.GFS_LEGACY,
+            "AIGFS": self.AIGFS,
             "NAM": self.NAM,
             "NAM_LEGACY": self.NAM_LEGACY,
             "ECMWF_v0": self.ECMWF_v0,
@@ -263,14 +253,12 @@ def __init__(self):
             "NOAA_LEGACY": self.NOAA_LEGACY,
             "RAP": self.RAP,
             "RAP_LEGACY": self.RAP_LEGACY,
+            "HRRR": self.HRRR,
             "CMC": self.CMC,
-            "CMC_LEGACY": self.CMC_LEGACY,
             "GEFS": self.GEFS,
             "GEFS_LEGACY": self.GEFS_LEGACY,
             "HIRESW": self.HIRESW,
-            "HIRESW_LEGACY": self.HIRESW_LEGACY,
             "MERRA2": self.MERRA2,
-            "MERRA2_LEGACY": self.MERRA2_LEGACY,
         }
 
     def get(self, model):
diff --git a/rocketpy/exceptions.py b/rocketpy/exceptions.py
new file mode 100644
index 000000000..e6bdc4355
--- /dev/null
+++ b/rocketpy/exceptions.py
@@ -0,0 +1,30 @@
+"""Custom exceptions and warnings for RocketPy."""
+
+# TODO: progressively adopt these custom exceptions across the codebase.
+# Many modules still ``raise ValueError``/``TypeError`` directly; migrate those
+# to the appropriate ``RocketPyError`` subclass (adding new exception types here
+# as needed) so users can reliably catch ``RocketPyError`` and its subclasses.
+
+
+class RocketPyError(Exception):
+    """Base class for all RocketPy exceptions."""
+
+
+class InvalidParameterError(RocketPyError, ValueError):
+    """Raised when a constructor parameter has an invalid value (e.g. negative
+    radius or mass)."""
+
+
+class InvalidInertiaError(RocketPyError, ValueError):
+    """Raised when the inertia tuple/list does not have the expected length."""
+
+
+class UnstableRocketWarning(UserWarning):
+    """Issued when the rocket's static margin is negative at motor ignition,
+    indicating an aerodynamically unstable configuration.
+
+    Not issued when the rocket has any ``GenericSurface`` aerodynamic
+    surfaces, since their lift coefficient derivative is not accounted for
+    in the center of pressure calculation, making the static margin
+    unreliable for this check in that case.
+    """
diff --git a/rocketpy/mathutils/function.py b/rocketpy/mathutils/function.py
index 33a82ec01..8148dd454 100644
--- a/rocketpy/mathutils/function.py
+++ b/rocketpy/mathutils/function.py
@@ -5,6 +5,7 @@
 carefully as it may impact all the rest of the project.
 """
 
+import logging
 import operator
 import warnings
 from bisect import bisect_left
@@ -25,10 +26,13 @@
     RBFInterpolator,
     RegularGridInterpolator,
 )
+from scipy.spatial import Delaunay  # pylint: disable=no-name-in-module
 
 from rocketpy.plots.plot_helpers import show_or_save_plot
 from rocketpy.tools import deprecated, from_hex_decode, to_hex_encode
 
+logger = logging.getLogger(__name__)
+
 NUMERICAL_TYPES = (float, int, complex, np.integer, np.floating)
 INTERPOLATION_TYPES = {
     "linear": 0,
@@ -519,7 +523,9 @@ def linear_interpolation(x, x_min, x_max, x_data, y_data, coeffs):  # pylint: di
                         return (x - x_left) * (dy / dx) + y_left
 
                 else:
-                    interpolator = LinearNDInterpolator(self._domain, self._image)
+                    tri = Delaunay(self._domain)
+                    interpolator = LinearNDInterpolator(tri, self._image)
+                    self._nd_triangulation = tri
 
                     def linear_interpolation(x, x_min, x_max, x_data, y_data, coeffs):  # pylint: disable=unused-argument
                         return interpolator(x)
@@ -827,8 +833,11 @@ def __get_value_opt_nd(self, *args):
         min_domain = self._domain.T.min(axis=1)
         max_domain = self._domain.T.max(axis=1)
 
-        lower, upper = args < min_domain, args > max_domain
-        extrap = np.logical_or(lower.any(axis=1), upper.any(axis=1))
+        if self.__interpolation__ == "linear" and hasattr(self, "_nd_triangulation"):
+            extrap = self._nd_triangulation.find_simplex(args) < 0
+        else:
+            lower, upper = args < min_domain, args > max_domain
+            extrap = np.logical_or(lower.any(axis=1), upper.any(axis=1))
 
         if extrap.any():
             result[extrap] = self._extrapolation_func(
@@ -2012,7 +2021,7 @@ def plot(self, *args, **kwargs):
             elif self.__dom_dim__ == 2:
                 self.plot_2d(*args, **kwargs)
             else:
-                print("Error: Only functions with 1D or 2D domains can be plotted.")
+                logger.error("Only functions with 1D or 2D domains can be plotted.")
 
     @deprecated(
         reason="The `Function.plot1D` method is set to be deprecated and fully "
@@ -4399,6 +4408,6 @@ def reset_funcified_methods(instance):
 
     results = doctest.testmod()
     if results.failed < 1:
-        print(f"All the {results.attempted} tests passed!")
+        logger.info("All the %d tests passed!", results.attempted)
     else:
-        print(f"{results.failed} out of {results.attempted} tests failed.")
+        logger.error("%d out of %d tests failed.", results.failed, results.attempted)
diff --git a/rocketpy/mathutils/vector_matrix.py b/rocketpy/mathutils/vector_matrix.py
index 9c8bde144..c40e01e4b 100644
--- a/rocketpy/mathutils/vector_matrix.py
+++ b/rocketpy/mathutils/vector_matrix.py
@@ -1,9 +1,12 @@
+import logging
 from cmath import isclose
 from functools import cached_property
 from itertools import product
 
 from rocketpy.tools import euler313_to_quaternions, normalize_quaternions
 
+logger = logging.getLogger(__name__)
+
 
 class Vector:
     """Pure python basic R3 vector class designed for simple operations.
@@ -1108,6 +1111,6 @@ def from_dict(cls, data):
 
     results = doctest.testmod()
     if results.failed < 1:
-        print(f"All the {results.attempted} tests passed!")
+        logger.info("All the %d tests passed!", results.attempted)
     else:
-        print(f"{results.failed} out of {results.attempted} tests failed.")
+        logger.error("%d out of %d tests failed.", results.failed, results.attempted)
diff --git a/rocketpy/motors/__init__.py b/rocketpy/motors/__init__.py
index b13ff9392..56f24dddf 100644
--- a/rocketpy/motors/__init__.py
+++ b/rocketpy/motors/__init__.py
@@ -4,6 +4,7 @@
 from .liquid_motor import LiquidMotor
 from .motor import GenericMotor, Motor
 from .point_mass_motor import PointMassMotor
+from .ring_cluster_motor import RingClusterMotor
 from .solid_motor import SolidMotor
 from .tank import (
     LevelBasedTank,
diff --git a/rocketpy/motors/ring_cluster_motor.py b/rocketpy/motors/ring_cluster_motor.py
new file mode 100644
index 000000000..af0d544c3
--- /dev/null
+++ b/rocketpy/motors/ring_cluster_motor.py
@@ -0,0 +1,368 @@
+# pylint: disable=invalid-name
+import matplotlib.pyplot as plt
+import numpy as np
+
+from ..mathutils.function import Function, funcify_method
+from ..tools import parallel_axis_theorem_from_com
+from .motor import Motor
+
+
+class RingClusterMotor(Motor):
+    """
+    A class representing a cluster of N identical motors arranged symmetrically.
+
+    This class models a ring (annular) cluster configuration where a specific
+    number of identical motors (N >= 2) are arranged symmetrically along a
+    circular perimeter of a given radius. Note that this model assumes no
+    central motor is present along the rocket's longitudinal axis. The total
+    inertia tensors (Ixx and Iyy) are computed by explicitly summing the
+    contribution of each individual motor based on its angular position,
+    ensuring mathematical accuracy for all configurations, including the
+    asymmetric transverse inertia case of N=2.
+
+    Attributes
+    ----------
+    motor : SolidMotor
+        The single motor instance used in the cluster.
+    number : int
+        The number of motors in the cluster.
+    radius : float
+        The radial distance from the rocket's central axis to the center of each motor.
+    """
+
+    def __init__(self, motor, number, radius):
+        """
+        Initialize the ClusterMotor.
+
+        Parameters
+        ----------
+        motor : SolidMotor
+            The base motor to be clustered.
+        number : int
+            Number of motors. Must be >= 2.
+        radius : float
+            Distance from center of rocket to center of motor (m).
+        """
+        if not isinstance(number, int):
+            raise TypeError(f"number must be an int, got {type(number).__name__}")
+        if number < 2:
+            raise ValueError("number must be >= 2 for a ClusterMotor")
+        if not isinstance(radius, (int, float)):
+            raise TypeError(
+                f"radius must be a real number, got {type(radius).__name__}"
+            )
+        if radius < 0:
+            raise ValueError("radius must be non-negative")
+
+        self.motor = motor
+        self.number = number
+        self.radius = float(radius)
+        dry_inertia_cluster = self._calculate_dry_inertia()
+
+        # Use a thrust source scaled by the number of motors so that
+        # all thrust-derived quantities computed by the base Motor class
+        # correspond to the full cluster rather than a single motor.
+        scaled_thrust_source = motor.thrust * number
+
+        super().__init__(
+            thrust_source=scaled_thrust_source,
+            nozzle_radius=motor.nozzle_radius,
+            burn_time=motor.burn_time,
+            dry_mass=motor.dry_mass * number,
+            dry_inertia=dry_inertia_cluster,
+            center_of_dry_mass_position=motor.center_of_dry_mass_position,
+            coordinate_system_orientation=motor.coordinate_system_orientation,
+            reference_pressure=motor.reference_pressure,
+            interpolation_method="linear",
+        )
+
+        # The cluster has ``number`` nozzles, so its total exit area (used for
+        # the pressure-thrust / vacuum-thrust correction, which must be
+        # consistent with the thrust that was scaled by ``number``) is
+        # ``number`` times a single nozzle's area. ``nozzle_radius`` is kept as
+        # the single-nozzle radius.
+        self.nozzle_area = np.pi * motor.nozzle_radius**2 * number
+
+        self._setup_grain_properties()
+        self._propellant_mass = self.motor.propellant_mass * self.number
+        self._propellant_initial_mass = self.number * self.motor.propellant_initial_mass
+        self._center_of_propellant_mass = self.motor.center_of_propellant_mass
+        self._evaluate_propellant_inertia()
+
+    def _evaluate_propellant_inertia(self):
+        """Calculates the dynamic inertia of the propellant using Steiner's theorem."""
+        self._propellant_I_11 = self.motor.propellant_I_11 * self.number
+        self._propellant_I_22 = self.motor.propellant_I_22 * self.number
+
+        angles = np.linspace(0, 2 * np.pi, self.number, endpoint=False)
+        for angle in angles:
+            x = self.radius * np.cos(angle)
+            y = self.radius * np.sin(angle)
+
+            self._propellant_I_11 += self.motor.propellant_mass * (y**2)
+            self._propellant_I_22 += self.motor.propellant_mass * (x**2)
+
+        Izz_term1 = self.motor.propellant_I_33 * self.number
+        Izz_term2 = self.motor.propellant_mass * (self.number * self.radius**2)
+        self._propellant_I_33 = Izz_term1 + Izz_term2
+
+        zero_func = Function(0)
+        self._propellant_I_12 = zero_func
+        self._propellant_I_13 = zero_func
+        self._propellant_I_23 = zero_func
+
+    @funcify_method("Time (s)", "Inertia I_22 (kg m²)")
+    def I_22(self):
+        """Assembled (dry + propellant) transverse inertia about the e_2 axis.
+
+        Overrides :meth:`Motor.I_22`, which returns ``I_11`` directly on the
+        assumption that the motor is axisymmetric. That assumption does not hold
+        for every ring cluster, so ``I_22`` is computed here from the
+        separately-evaluated ``_22`` components (see
+        :meth:`_evaluate_propellant_inertia` and :meth:`_calculate_dry_inertia`).
+
+        When ``I_22`` equals ``I_11``
+        -----------------------------
+        The relevant property is not continuous axisymmetry (which a discrete
+        cluster of ``number`` motors never has for finite ``number``) but
+        *transverse isotropy* of the inertia tensor: ``I_11 == I_22`` and
+        ``I_12 == 0``, i.e. every transverse axis is a principal axis with the
+        same moment. A rigid body has this whenever it possesses a discrete
+        rotational-symmetry axis of order ``n >= 3`` -- geometric axisymmetry is
+        sufficient but not necessary.
+
+        For a ring cluster the motors sit at angles ``theta_k = 2*pi*k/number``,
+        ``k = 0 .. number-1``, all at radius ``radius``. The transverse
+        anisotropy is driven by
+
+            I_22 - I_11  proportional to  sum_k (x_k**2 - y_k**2)
+                         = radius**2 * sum_k cos(2*theta_k)
+                         = radius**2 * Re( sum_k exp(i * 4*pi*k / number) ).
+
+        That geometric series vanishes unless ``exp(i*4*pi/number) == 1``, i.e.
+        unless ``number`` divides 2. Hence:
+
+        * ``number == 2`` -- the ``m = 2`` angular term does not cancel
+          (``sum cos(2*theta_k) == 2``); the cluster is transversely anisotropic
+          and ``I_22 != I_11``. This is the case this override exists for.
+        * ``number >= 3`` -- the term cancels exactly for *every* such value
+          (odd, even, prime alike); ``I_22 == I_11`` analytically, and this
+          method returns the same value as :meth:`I_11` up to floating-point
+          round-off.
+
+        Note that parity or primality of ``number`` is irrelevant: three or more
+        equally-spaced motors already annihilate the ``m = 2`` harmonic, so e.g.
+        ``number == 3`` and ``number == 5`` are both transversely isotropic. The
+        sole non-trivial anisotropic configuration (given the ``number >= 2``
+        constraint enforced in ``__init__``) is ``number == 2``.
+
+        The implementation nonetheless sums every motor's contribution
+        explicitly rather than special-casing ``number == 2``, so the result is
+        exact for all configurations.
+        """
+        prop_I_22 = parallel_axis_theorem_from_com(
+            self.propellant_I_22,
+            self.propellant_mass,
+            self.center_of_propellant_mass - self.center_of_mass,
+        )
+        dry_I_22 = parallel_axis_theorem_from_com(
+            self.dry_I_22,
+            self.dry_mass,
+            self.center_of_dry_mass_position - self.center_of_mass,
+        )
+        return prop_I_22 + dry_I_22
+
+    def _setup_grain_properties(self):
+        """Copies the grain properties from the base motor."""
+        self.throat_radius = self.motor.throat_radius
+        self.grain_number = self.motor.grain_number
+        self.grain_density = self.motor.grain_density
+        self.grain_outer_radius = self.motor.grain_outer_radius
+        self.grain_initial_inner_radius = self.motor.grain_initial_inner_radius
+        self.grain_initial_height = self.motor.grain_initial_height
+        self.grains_center_of_mass_position = self.motor.grains_center_of_mass_position
+
+    @property
+    def thrust(self):
+        return self._thrust
+
+    @thrust.setter
+    def thrust(self, value):
+        self._thrust = value
+
+    @property
+    def propellant_mass(self):
+        return self._propellant_mass
+
+    @propellant_mass.setter
+    def propellant_mass(self, value):
+        self._propellant_mass = value
+
+    @property
+    def propellant_initial_mass(self):
+        return self._propellant_initial_mass
+
+    @propellant_initial_mass.setter
+    def propellant_initial_mass(self, value):
+        self._propellant_initial_mass = value
+
+    @property
+    def center_of_propellant_mass(self):
+        return self._center_of_propellant_mass
+
+    @center_of_propellant_mass.setter
+    def center_of_propellant_mass(self, value):
+        self._center_of_propellant_mass = value
+
+    @property
+    def propellant_I_11(self):
+        return self._propellant_I_11
+
+    @propellant_I_11.setter
+    def propellant_I_11(self, value):
+        self._propellant_I_11 = value
+
+    @property
+    def propellant_I_22(self):
+        return self._propellant_I_22
+
+    @propellant_I_22.setter
+    def propellant_I_22(self, value):
+        self._propellant_I_22 = value
+
+    @property
+    def propellant_I_33(self):
+        return self._propellant_I_33
+
+    @propellant_I_33.setter
+    def propellant_I_33(self, value):
+        self._propellant_I_33 = value
+
+    @property
+    def propellant_I_12(self):
+        return self._propellant_I_12
+
+    @propellant_I_12.setter
+    def propellant_I_12(self, value):
+        self._propellant_I_12 = value
+
+    @property
+    def propellant_I_13(self):
+        return self._propellant_I_13
+
+    @propellant_I_13.setter
+    def propellant_I_13(self, value):
+        self._propellant_I_13 = value
+
+    @property
+    def propellant_I_23(self):
+        return self._propellant_I_23
+
+    @propellant_I_23.setter
+    def propellant_I_23(self, value):
+        self._propellant_I_23 = value
+
+    @property
+    def exhaust_velocity(self):
+        return self.motor.exhaust_velocity
+
+    def _calculate_dry_inertia(self):
+        Ixx_loc = self.motor.dry_I_11
+        Iyy_loc = self.motor.dry_I_22
+        Izz_loc = self.motor.dry_I_33
+        m_dry = self.motor.dry_mass
+
+        Izz_cluster = self.number * Izz_loc + self.number * m_dry * (self.radius**2)
+        Ixx_cluster = self.number * Ixx_loc
+        Iyy_cluster = self.number * Iyy_loc
+
+        angles = np.linspace(0, 2 * np.pi, self.number, endpoint=False)
+        for angle in angles:
+            x = self.radius * np.cos(angle)
+            y = self.radius * np.sin(angle)
+            Ixx_cluster += m_dry * (y**2)
+            Iyy_cluster += m_dry * (x**2)
+
+        return (Ixx_cluster, Iyy_cluster, Izz_cluster)
+
+    def info(self, *args, **kwargs):
+        print("Cluster Configuration:")
+        print(f" - Motors: {self.number} x {type(self.motor).__name__}")
+        print(f" - Radial Distance: {self.radius} m")
+        return self.motor.info(*args, **kwargs)
+
+    def to_dict(self, **kwargs):
+        data = super().to_dict(**kwargs)
+        data.update(
+            {
+                "motor": self.motor,
+                "number": self.number,
+                "radius": self.radius,
+            }
+        )
+        return data
+
+    @classmethod
+    def from_dict(cls, data):
+        return cls(
+            motor=data["motor"],
+            number=data["number"],
+            radius=data["radius"],
+        )
+
+    def draw_cluster_layout(self, rocket_radius=None, show=True):
+        """Draw the geometric layout of the clustered motors."""
+        fig, ax = plt.subplots(figsize=(6, 6))
+        ax.plot(0, 0, "k+", markersize=10, label="Central axis")
+        if rocket_radius:
+            rocket_tube = plt.Circle(
+                (0, 0),
+                rocket_radius,
+                color="black",
+                fill=False,
+                linestyle="--",
+                linewidth=2,
+                label="Rocket",
+            )
+            ax.add_patch(rocket_tube)
+            limit = rocket_radius * 1.2
+        else:
+            limit = self.radius * 2
+        self._draw_engines(ax)
+        ax.set_aspect("equal", "box")
+        ax.set_xlim(-limit, limit)
+        ax.set_ylim(-limit, limit)
+        ax.set_xlabel("Position X (m)")
+        ax.set_ylabel("Position Y (m)")
+        ax.set_title(f"Cluster Configuration : {self.number} engines")
+        ax.grid(True, linestyle=":", alpha=0.6)
+        ax.legend(loc="upper right")
+        if show:
+            plt.show()
+        return fig, ax
+
+    def _draw_engines(self, ax):
+        """Draws the individual engines of the cluster."""
+        motor_outer_radius = self.grain_outer_radius
+        angles = np.linspace(0, 2 * np.pi, self.number, endpoint=False)
+
+        for i, angle in enumerate(angles):
+            x = self.radius * np.cos(angle)
+            y = self.radius * np.sin(angle)
+            motor_circle = plt.Circle(
+                (x, y),
+                motor_outer_radius,
+                color="red",
+                alpha=0.5,
+                label="Engine" if i == 0 else "",
+            )
+            ax.add_patch(motor_circle)
+            ax.text(
+                x,
+                y,
+                str(i + 1),
+                color="white",
+                ha="center",
+                va="center",
+                fontweight="bold",
+            )
diff --git a/rocketpy/motors/tank.py b/rocketpy/motors/tank.py
index 6f3496b32..0d6b329a4 100644
--- a/rocketpy/motors/tank.py
+++ b/rocketpy/motors/tank.py
@@ -6,7 +6,7 @@
 from ..mathutils.function import Function, funcify_method
 from ..plots.tank_plots import _TankPlots
 from ..prints.tank_prints import _TankPrints
-from ..tools import deprecated, tuple_handler
+from ..tools import tuple_handler
 
 
 class Tank(ABC):
@@ -1025,17 +1025,6 @@ def _discretize_fluid_inputs(self):
             )
             self._gas_density.set_discrete_based_on_model(self.gas_mass_flow_rate_in)
 
-    @deprecated(
-        "Should not be a public member of the class.",
-        "1.12.0",
-        "_discretize_fluid_inputs",
-    )
-    def discretize_flow(self):
-        """Discretizes the mass flow rate inputs according to the flux time and
-        the discretize parameter.
-        """
-        self._discretize_fluid_inputs()
-
     def to_dict(self, **kwargs):
         data = super().to_dict(**kwargs)
         data.update(
@@ -1288,17 +1277,6 @@ def _discretize_fluid_inputs(self):
             self._liquid_density.set_discrete_based_on_model(self.ullage)
             self._gas_density.set_discrete_based_on_model(self.ullage)
 
-    @deprecated(
-        "Should not be a public member of the class.",
-        "1.12.0",
-        "_discretize_fluid_inputs",
-    )
-    def discretize_ullage(self):
-        """Discretizes the ullage input according to the flux time
-        and the discretize parameter.
-        """
-        self._discretize_fluid_inputs()
-
     def to_dict(self, **kwargs):
         data = super().to_dict(**kwargs)
         data.update({"ullage": self.ullage})
@@ -1542,17 +1520,6 @@ def gas_height(self):
             self.liquid_level
         )
 
-    @deprecated(
-        "Should not be a public member of the class.",
-        "1.12.0",
-        "_discretize_fluid_inputs",
-    )
-    def discretize_liquid_height(self):
-        """Discretizes the liquid height input according to the flux time
-        and the discretize parameter.
-        """
-        self._discretize_fluid_inputs()
-
     def _discretize_fluid_inputs(self):
         """Uniformly discretizes the parameter of inputs of fluid data ."""
         if self.discretize:
@@ -1835,17 +1802,6 @@ def gas_height(self):
             )
         return gas_height
 
-    @deprecated(
-        "Should not be a public member of the class.",
-        "1.12.0",
-        "_discretize_fluid_inputs",
-    )
-    def discretize_masses(self):
-        """Discretizes the fluid mass inputs according to the flux time
-        and the discretize parameter.
-        """
-        self._discretize_fluid_inputs()
-
     def _discretize_fluid_inputs(self):
         """Uniformly discretizes the parameter of inputs of fluid data ."""
         if self.discretize:
diff --git a/rocketpy/motors/tank_geometry.py b/rocketpy/motors/tank_geometry.py
index 485f57b09..e71f862ca 100644
--- a/rocketpy/motors/tank_geometry.py
+++ b/rocketpy/motors/tank_geometry.py
@@ -1,3 +1,5 @@
+import logging
+import warnings
 from functools import cached_property
 
 import numpy as np
@@ -7,6 +9,8 @@
 from ..plots.tank_geometry_plots import _TankGeometryPlots
 from ..prints.tank_geometry_prints import _TankGeometryPrints
 
+logger = logging.getLogger(__name__)
+
 try:
     from functools import cache
 except ImportError:
@@ -384,14 +388,21 @@ class inherits from the TankGeometry class. See the TankGeometry class
     for more information on its attributes and methods.
     """
 
-    def __init__(self, radius, height, spherical_caps=False, geometry_dict=None):
+    def __init__(
+        self,
+        radius_function=None,
+        height=None,
+        spherical_caps=False,
+        geometry_dict=None,
+        **kwargs,
+    ):
         """Initialize CylindricalTank class. The zero reference point of the
         cylinder is its center (i.e. half of its height). Therefore the its
         height coordinate span is (-height/2, height/2).
 
         Parameters
         ----------
-        radius : float
+        radius_function : int, float
             Radius of the cylindrical tank, in meters.
         height : float
             Height of the cylindrical tank, in meters.
@@ -401,17 +412,52 @@ def __init__(self, radius, height, spherical_caps=False, geometry_dict=None):
             will have flat caps at the top and bottom. Defaults to False.
         geometry_dict : Union[dict, None], optional
             Dictionary containing the geometry of the tank. See TankGeometry.
-        """
+
+        Notes
+        -----
+        The ``radius`` keyword argument is deprecated. Use ``radius_function``
+        instead.
+        """
+        if "radius" in kwargs:
+            if radius_function is not None:
+                raise TypeError(
+                    "Cannot specify both 'radius_function' and deprecated "
+                    "'radius' arguments. Use 'radius_function' instead."
+                )
+            warnings.warn(
+                "The 'radius' argument in CylindricalTank is deprecated in v1.13.0 "
+                "and will be removed in v2.0.0. Use 'radius_function' instead.",
+                DeprecationWarning,
+                stacklevel=2,
+            )
+            radius_function = kwargs.pop("radius")
+        if kwargs:
+            raise TypeError(
+                "CylindricalTank.__init__() got unexpected keyword argument(s): "
+                f"{', '.join(map(repr, kwargs))}"
+            )
+        if radius_function is None:
+            raise TypeError(
+                "CylindricalTank.__init__() missing required argument: "
+                "'radius_function'"
+            )
+        if height is None:
+            raise TypeError(
+                "CylindricalTank.__init__() missing required argument: 'height'"
+            )
         geometry_dict = geometry_dict or {}
         super().__init__(geometry_dict)
-        self.__input_radius = radius
+        self.radius_function = radius_function
         self.height = height
         self.has_caps = False
         if spherical_caps:
-            self.add_geometry((-height / 2 + radius, height / 2 - radius), radius)
+            self.add_geometry(
+                (-height / 2 + radius_function, height / 2 - radius_function),
+                radius_function,
+            )
             self.add_spherical_caps()
         else:
-            self.add_geometry((-height / 2, height / 2), radius)
+            self.add_geometry((-height / 2, height / 2), radius_function)
 
     def add_spherical_caps(self):
         """
@@ -420,15 +466,16 @@ def add_spherical_caps(self):
         part. The height is not modified, meaning that the total volume of
         the tank will decrease.
         """
-        print(
-            "Warning: Adding spherical caps to the tank will not modify the "
-            + f"total height of the tank {self.height} m. "
-            + "Its cylindrical portion height will be reduced to "
-            + f"{self.height - 2 * self.__input_radius} m."
+        logger.warning(
+            "Adding spherical caps to the tank will not modify the total height "
+            "of the tank (%.4f m). Its cylindrical portion height will be "
+            "reduced to %s m.",
+            self.height,
+            self.height - 2 * self.radius_function,
         )
 
         if not self.has_caps:
-            radius = self.__input_radius
+            radius = self.radius_function
             height = self.height
             bottom_cap_range = (-height / 2, -height / 2 + radius)
             upper_cap_range = (height / 2 - radius, height / 2)
@@ -447,7 +494,7 @@ def upper_cap_radius(h):
 
     def to_dict(self, **kwargs):
         data = {
-            "radius": self.__input_radius,
+            "radius_function": self.radius_function,
             "height": self.height,
             "spherical_caps": self.has_caps,
         }
@@ -459,7 +506,18 @@ def to_dict(self, **kwargs):
 
     @classmethod
     def from_dict(cls, data):
-        return cls(data["radius"], data["height"], data["spherical_caps"])
+        if "radius_function" in data:
+            radius_function = data["radius_function"]
+        else:
+            warnings.warn(
+                "The 'radius' key in CylindricalTank serialized data is "
+                "deprecated in v1.13.0 and will be removed in v2.0.0. "
+                "Use 'radius_function' instead.",
+                DeprecationWarning,
+                stacklevel=2,
+            )
+            radius_function = data["radius"]
+        return cls(radius_function, data["height"], data["spherical_caps"])
 
 
 class SphericalTank(TankGeometry):
@@ -468,25 +526,55 @@ class SphericalTank(TankGeometry):
     inherits from the TankGeometry class. See the TankGeometry class for
     more information on its attributes and methods."""
 
-    def __init__(self, radius, geometry_dict=None):
+    def __init__(self, radius_function=None, geometry_dict=None, **kwargs):
         """Initialize SphericalTank class. The zero reference point of the
         sphere is its center (i.e. half of its height). Therefore, its height
-        coordinate ranges between (-radius, radius).
+        coordinate ranges between (-radius_function, radius_function).
 
         Parameters
         ----------
-        radius : float
-            Radius of the spherical tank.
+        radius_function : int, float
+            Radius of the spherical tank, in meters.
         geometry_dict : Union[dict, None], optional
             Dictionary containing the geometry of the tank. See TankGeometry.
-        """
+
+        Notes
+        -----
+        The ``radius`` keyword argument is deprecated. Use ``radius_function``
+        instead.
+        """
+        if "radius" in kwargs:
+            if radius_function is not None:
+                raise TypeError(
+                    "Cannot specify both 'radius_function' and deprecated "
+                    "'radius' arguments. Use 'radius_function' instead."
+                )
+            warnings.warn(
+                "The 'radius' argument in SphericalTank is deprecated in v1.13.0 "
+                "and will be removed in v2.0.0. Use 'radius_function' instead.",
+                DeprecationWarning,
+                stacklevel=2,
+            )
+            radius_function = kwargs.pop("radius")
+        if kwargs:
+            raise TypeError(
+                "SphericalTank.__init__() got unexpected keyword argument(s): "
+                f"{', '.join(map(repr, kwargs))}"
+            )
+        if radius_function is None:
+            raise TypeError(
+                "SphericalTank.__init__() missing required argument: 'radius_function'"
+            )
         geometry_dict = geometry_dict or {}
         super().__init__(geometry_dict)
-        self.__input_radius = radius
-        self.add_geometry((-radius, radius), lambda h: (radius**2 - h**2) ** 0.5)
+        self.radius_function = radius_function
+        self.add_geometry(
+            (-radius_function, radius_function),
+            lambda h: (radius_function**2 - h**2) ** 0.5,
+        )
 
     def to_dict(self, **kwargs):
-        data = {"radius": self.__input_radius}
+        data = {"radius_function": self.radius_function}
 
         if kwargs.get("include_outputs", False):
             data.update(super().to_dict(**kwargs))
@@ -495,4 +583,15 @@ def to_dict(self, **kwargs):
 
     @classmethod
     def from_dict(cls, data):
-        return cls(data["radius"])
+        if "radius_function" in data:
+            radius_function = data["radius_function"]
+        else:
+            warnings.warn(
+                "The 'radius' key in SphericalTank serialized data is "
+                "deprecated in v1.13.0 and will be removed in v2.0.0. "
+                "Use 'radius_function' instead.",
+                DeprecationWarning,
+                stacklevel=2,
+            )
+            radius_function = data["radius"]
+        return cls(radius_function)
diff --git a/rocketpy/plots/aero_surface_plots.py b/rocketpy/plots/aero_surface_plots.py
index 397ad8f55..eb97ce19b 100644
--- a/rocketpy/plots/aero_surface_plots.py
+++ b/rocketpy/plots/aero_surface_plots.py
@@ -1,3 +1,5 @@
+# pylint: disable=too-many-statements
+
 from abc import ABC, abstractmethod
 
 import matplotlib.pyplot as plt
@@ -139,14 +141,97 @@ class _FinsPlots(_AeroSurfacePlots):
     """Abstract class that contains all fin plots. This class inherits from the
     _AeroSurfacePlots class."""
 
-    @abstractmethod
-    def draw(self, *, filename=None):
-        pass
+    def airfoil(self, *, filename=None):
+        """Plots the airfoil information when the fin has an airfoil shape. If
+        the fin does not have an airfoil shape, this method does nothing.
+
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved.
+
+        Returns
+        -------
+        None
+        """
+
+        if self.aero_surface.airfoil:
+            print("Airfoil lift curve:")
+            self.aero_surface.airfoil_cl.plot_1d(force_data=True, filename=filename)
+
+    def roll(self, *, filename=None):
+        """Plots the roll parameters of the fin set.
+
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved.
+
+        Returns
+        -------
+        None
+        """
+        print("Roll parameters:")
+        self.aero_surface.roll_parameters[0](filename=filename)
+        self.aero_surface.roll_parameters[1](filename=filename)
+
+    def lift(self, *, filename=None):
+        """Plots the lift coefficient of the aero surface as a function of Mach
+        and the angle of attack. A 3D plot is expected. See the rocketpy.Function
+        class for more information on how this plot is made. Also, this method
+        plots the lift coefficient considering a single fin and the lift
+        coefficient considering all fins.
+
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved.
+
+        Returns
+        -------
+        None
+        """
+        print("Lift coefficient:")
+        self.aero_surface.cl(filename=filename)
+        self.aero_surface.clalpha_single_fin(filename=filename)
+        self.aero_surface.clalpha_multiple_fins(filename=filename)
+
+    def all(self, *, filename=None):
+        """Plots all available fin plots.
+
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved.
+
+        Returns
+        -------
+        None
+        """
+        self.draw(filename=filename)
+        self.airfoil(filename=filename)
+        self.roll(filename=filename)
+        self.lift(filename=filename)
 
-    def airfoil(self):
+
+class _FinPlots(_AeroSurfacePlots):
+    """Abstract class that contains all fin plots. This class inherits from the
+    _AeroSurfacePlots class."""
+
+    def airfoil(self, *, filename=None):
         """Plots the airfoil information when the fin has an airfoil shape. If
         the fin does not have an airfoil shape, this method does nothing.
 
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved.
+
         Returns
         -------
         None
@@ -154,52 +239,68 @@ def airfoil(self):
 
         if self.aero_surface.airfoil:
             print("Airfoil lift curve:")
-            self.aero_surface.airfoil_cl.plot_1d(force_data=True)
+            self.aero_surface.airfoil_cl.plot_1d(force_data=True, filename=filename)
 
-    def roll(self):
+    def roll(self, *, filename=None):
         """Plots the roll parameters of the fin set.
 
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved.
+
         Returns
         -------
         None
         """
         print("Roll parameters:")
-        self.aero_surface.roll_parameters[0]()
-        self.aero_surface.roll_parameters[1]()
+        self.aero_surface.roll_parameters[0](filename=filename)
+        self.aero_surface.roll_parameters[1](filename=filename)
 
-    def lift(self):
+    def lift(self, *, filename=None):
         """Plots the lift coefficient of the aero surface as a function of Mach
         and the angle of attack. A 3D plot is expected. See the rocketpy.Function
         class for more information on how this plot is made. Also, this method
         plots the lift coefficient considering a single fin and the lift
         coefficient considering all fins.
 
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved.
+
         Returns
         -------
         None
         """
         print("Lift coefficient:")
-        self.aero_surface.cl()
-        self.aero_surface.clalpha_single_fin()
-        self.aero_surface.clalpha_multiple_fins()
+        self.aero_surface.cl(filename=filename)
+        self.aero_surface.clalpha_single_fin(filename=filename)
 
-    def all(self):
+    def all(self, *, filename=None):
         """Plots all available fin plots.
 
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved.
+
         Returns
         -------
         None
         """
-        self.draw()
-        self.airfoil()
-        self.roll()
-        self.lift()
+        self.draw(filename=filename)
+        self.airfoil(filename=filename)
+        self.roll(filename=filename)
+        self.lift(filename=filename)
 
 
 class _TrapezoidalFinsPlots(_FinsPlots):
     """Class that contains all trapezoidal fin plots."""
 
-    # pylint: disable=too-many-statements
     def draw(self, *, filename=None):
         """Draw the fin shape along with some important information, including
         the center line, the quarter line and the center of pressure position.
@@ -325,10 +426,129 @@ def draw(self, *, filename=None):
         show_or_save_plot(filename)
 
 
+class _TrapezoidalFinPlots(_FinPlots):
+    """Class that contains all trapezoidal fin plots."""
+
+    def draw(self, *, filename=None):
+        """Draw the fin shape along with some important information, including
+        the center line, the quarter line and the center of pressure position.
+
+        Returns
+        -------
+        None
+        """
+        # Color cycle [#348ABD, #A60628, #7A68A6, #467821, #D55E00, #CC79A7,
+        # #56B4E9, #009E73, #F0E442, #0072B2]
+        # Fin
+        leading_edge = plt.Line2D(
+            (0, self.aero_surface.sweep_length),
+            (0, self.aero_surface.span),
+            color="#A60628",
+        )
+        tip = plt.Line2D(
+            (
+                self.aero_surface.sweep_length,
+                self.aero_surface.sweep_length + self.aero_surface.tip_chord,
+            ),
+            (self.aero_surface.span, self.aero_surface.span),
+            color="#A60628",
+        )
+        back_edge = plt.Line2D(
+            (
+                self.aero_surface.sweep_length + self.aero_surface.tip_chord,
+                self.aero_surface.root_chord,
+            ),
+            (self.aero_surface.span, 0),
+            color="#A60628",
+        )
+        root = plt.Line2D((self.aero_surface.root_chord, 0), (0, 0), color="#A60628")
+
+        # Center and Quarter line
+        center_line = plt.Line2D(
+            (
+                self.aero_surface.root_chord / 2,
+                self.aero_surface.sweep_length + self.aero_surface.tip_chord / 2,
+            ),
+            (0, self.aero_surface.span),
+            color="#7A68A6",
+            alpha=0.35,
+            linestyle="--",
+            label="Center Line",
+        )
+        quarter_line = plt.Line2D(
+            (
+                self.aero_surface.root_chord / 4,
+                self.aero_surface.sweep_length + self.aero_surface.tip_chord / 4,
+            ),
+            (0, self.aero_surface.span),
+            color="#7A68A6",
+            alpha=1,
+            linestyle="--",
+            label="Quarter Line",
+        )
+
+        # Center of pressure
+        cp_point = [self.aero_surface.cpz, self.aero_surface.Yma]
+
+        # Mean Aerodynamic Chord
+        yma_start = (
+            self.aero_surface.sweep_length
+            * (self.aero_surface.root_chord + 2 * self.aero_surface.tip_chord)
+            / (3 * (self.aero_surface.root_chord + self.aero_surface.tip_chord))
+        )
+        yma_end = (
+            2 * self.aero_surface.root_chord**2
+            + self.aero_surface.root_chord * self.aero_surface.sweep_length
+            + 2 * self.aero_surface.root_chord * self.aero_surface.tip_chord
+            + 2 * self.aero_surface.sweep_length * self.aero_surface.tip_chord
+            + 2 * self.aero_surface.tip_chord**2
+        ) / (3 * (self.aero_surface.root_chord + self.aero_surface.tip_chord))
+        yma_line = plt.Line2D(
+            (yma_start, yma_end),
+            (self.aero_surface.Yma, self.aero_surface.Yma),
+            color="#467821",
+            linestyle="--",
+            label="Mean Aerodynamic Chord",
+        )
+
+        # Plotting
+        fig = plt.figure(figsize=(7, 4))
+        with plt.style.context("bmh"):
+            ax = fig.add_subplot(111)
+
+        # Fin
+        ax.add_line(leading_edge)
+        ax.add_line(tip)
+        ax.add_line(back_edge)
+        ax.add_line(root)
+
+        ax.add_line(center_line)
+        ax.add_line(quarter_line)
+        ax.add_line(yma_line)
+        ax.scatter(*cp_point, label="Center of Pressure", color="red", s=100, zorder=10)
+        ax.scatter(*cp_point, facecolors="none", edgecolors="red", s=500, zorder=10)
+
+        # Plot settings
+        xlim = (
+            self.aero_surface.root_chord
+            if self.aero_surface.sweep_length + self.aero_surface.tip_chord
+            < self.aero_surface.root_chord
+            else self.aero_surface.sweep_length + self.aero_surface.tip_chord
+        )
+        ax.set_xlim(0, xlim * 1.1)
+        ax.set_ylim(0, self.aero_surface.span * 1.1)
+        ax.set_xlabel("Root chord (m)")
+        ax.set_ylabel("Span (m)")
+        ax.set_title("Trapezoidal Fin Cross Section")
+        ax.legend(bbox_to_anchor=(1.05, 1.0), loc="upper left")
+
+        plt.tight_layout()
+        show_or_save_plot(filename)
+
+
 class _EllipticalFinsPlots(_FinsPlots):
     """Class that contains all elliptical fin plots."""
 
-    # pylint: disable=too-many-statements
     def draw(self, *, filename=None):
         """Draw the fin shape along with some important information.
         These being: the center line and the center of pressure position.
@@ -404,10 +624,153 @@ def draw(self, *, filename=None):
         show_or_save_plot(filename)
 
 
+class _EllipticalFinPlots(_FinPlots):
+    """Class that contains all elliptical fin plots."""
+
+    def draw(self, *, filename=None):
+        """Draw the fin shape along with some important information.
+        These being: the center line and the center of pressure position.
+
+        Returns
+        -------
+        None
+        """
+        # Ellipse
+        ellipse = Ellipse(
+            (self.aero_surface.root_chord / 2, 0),
+            self.aero_surface.root_chord,
+            self.aero_surface.span * 2,
+            fill=False,
+            edgecolor="#A60628",
+            linewidth=2,
+        )
+
+        # Mean Aerodynamic Chord # From Barrowman's theory
+        yma_length = 8 * self.aero_surface.root_chord / (3 * np.pi)
+        yma_start = (self.aero_surface.root_chord - yma_length) / 2
+        yma_end = (
+            self.aero_surface.root_chord
+            - (self.aero_surface.root_chord - yma_length) / 2
+        )
+        yma_line = plt.Line2D(
+            (yma_start, yma_end),
+            (self.aero_surface.Yma, self.aero_surface.Yma),
+            label="Mean Aerodynamic Chord",
+            color="#467821",
+        )
+
+        # Center Line
+        center_line = plt.Line2D(
+            (self.aero_surface.root_chord / 2, self.aero_surface.root_chord / 2),
+            (0, self.aero_surface.span),
+            color="#7A68A6",
+            alpha=0.35,
+            linestyle="--",
+            label="Center Line",
+        )
+
+        # Center of pressure
+        cp_point = [self.aero_surface.cpz, self.aero_surface.Yma]
+
+        # Plotting
+        fig = plt.figure(figsize=(7, 4))
+        with plt.style.context("bmh"):
+            ax = fig.add_subplot(111)
+        ax.add_patch(ellipse)
+        ax.add_line(yma_line)
+        ax.add_line(center_line)
+        ax.scatter(*cp_point, label="Center of Pressure", color="red", s=100, zorder=10)
+        ax.scatter(*cp_point, facecolors="none", edgecolors="red", s=500, zorder=10)
+
+        # Plot settings
+        ax.set_xlim(0, self.aero_surface.root_chord)
+        ax.set_ylim(0, self.aero_surface.span * 1.1)
+        ax.set_xlabel("Root chord (m)")
+        ax.set_ylabel("Span (m)")
+        ax.set_title("Elliptical Fin Cross Section")
+        ax.legend(bbox_to_anchor=(1.05, 1.0), loc="upper left")
+
+        plt.tight_layout()
+        show_or_save_plot(filename)
+
+
 class _FreeFormFinsPlots(_FinsPlots):
     """Class that contains all free form fin plots."""
 
-    # pylint: disable=too-many-statements
+    def draw(self, *, filename=None):
+        """Draw the fin shape along with some important information.
+        These being: the center line and the center of pressure position.
+
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved. Supported file endings are:
+            eps, jpg, jpeg, pdf, pgf, png, ps, raw, rgba, svg, svgz, tif, tiff
+            and webp (these are the formats supported by matplotlib).
+
+        Returns
+        -------
+        None
+        """
+        # Color cycle [#348ABD, #A60628, #7A68A6, #467821, #D55E00, #CC79A7,
+        # #56B4E9, #009E73, #F0E442, #0072B2]
+
+        # Center of pressure
+        cp_point = [self.aero_surface.cpz, self.aero_surface.Yma]
+
+        # Mean Aerodynamic Chord
+        yma_line = plt.Line2D(
+            (
+                self.aero_surface.mac_lead,
+                self.aero_surface.mac_lead + self.aero_surface.mac_length,
+            ),
+            (self.aero_surface.Yma, self.aero_surface.Yma),
+            color="#467821",
+            linestyle="--",
+            label="Mean Aerodynamic Chord",
+        )
+
+        # Plotting
+        fig = plt.figure(figsize=(7, 4))
+        with plt.style.context("bmh"):
+            ax = fig.add_subplot(111)
+
+        # Fin
+        ax.scatter(
+            self.aero_surface.shape_vec[0],
+            self.aero_surface.shape_vec[1],
+            color="#A60628",
+        )
+        ax.plot(
+            self.aero_surface.shape_vec[0],
+            self.aero_surface.shape_vec[1],
+            color="#A60628",
+        )
+        # line from the last point to the first point
+        ax.plot(
+            [self.aero_surface.shape_vec[0][-1], self.aero_surface.shape_vec[0][0]],
+            [self.aero_surface.shape_vec[1][-1], self.aero_surface.shape_vec[1][0]],
+            color="#A60628",
+        )
+
+        ax.add_line(yma_line)
+        ax.scatter(*cp_point, label="Center of Pressure", color="red", s=100, zorder=10)
+        ax.scatter(*cp_point, facecolors="none", edgecolors="red", s=500, zorder=10)
+
+        # Plot settings
+        ax.set_xlabel("Root chord (m)")
+        ax.set_ylabel("Span (m)")
+        ax.set_title("Free Form Fin Cross Section")
+        ax.legend(bbox_to_anchor=(1.05, 1.0), loc="upper left")
+
+        plt.tight_layout()
+        show_or_save_plot(filename)
+
+
+class _FreeFormFinPlots(_FinPlots):
+    """Class that contains all free form fin plots."""
+
     def draw(self, *, filename=None):
         """Draw the fin shape along with some important information.
         These being: the center line and the center of pressure position.
diff --git a/rocketpy/plots/assets/default_rocket.stl b/rocketpy/plots/assets/default_rocket.stl
new file mode 100644
index 000000000..a8ee68d7c
--- /dev/null
+++ b/rocketpy/plots/assets/default_rocket.stl
@@ -0,0 +1,674 @@
+solid default_rocket
+  facet normal 0.991445 0.130526 0.000000
+    outer loop
+      vertex 0.300000 0.000000 0.000000
+      vertex 0.289778 0.077646 0.000000
+      vertex 0.289778 0.077646 3.000000
+    endloop
+  endfacet
+  facet normal 0.991445 0.130526 -0.000000
+    outer loop
+      vertex 0.300000 0.000000 0.000000
+      vertex 0.289778 0.077646 3.000000
+      vertex 0.300000 0.000000 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.289778 0.077646 0.000000
+      vertex 0.300000 0.000000 0.000000
+    endloop
+  endfacet
+  facet normal 0.950301 0.125109 0.285090
+    outer loop
+      vertex 0.300000 0.000000 3.000000
+      vertex 0.289778 0.077646 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.923880 0.382683 0.000000
+    outer loop
+      vertex 0.289778 0.077646 0.000000
+      vertex 0.259808 0.150000 0.000000
+      vertex 0.259808 0.150000 3.000000
+    endloop
+  endfacet
+  facet normal 0.923880 0.382683 -0.000000
+    outer loop
+      vertex 0.289778 0.077646 0.000000
+      vertex 0.259808 0.150000 3.000000
+      vertex 0.289778 0.077646 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.259808 0.150000 0.000000
+      vertex 0.289778 0.077646 0.000000
+    endloop
+  endfacet
+  facet normal 0.885539 0.366802 0.285090
+    outer loop
+      vertex 0.289778 0.077646 3.000000
+      vertex 0.259808 0.150000 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.793353 0.608761 0.000000
+    outer loop
+      vertex 0.259808 0.150000 0.000000
+      vertex 0.212132 0.212132 0.000000
+      vertex 0.212132 0.212132 3.000000
+    endloop
+  endfacet
+  facet normal 0.793353 0.608761 -0.000000
+    outer loop
+      vertex 0.259808 0.150000 0.000000
+      vertex 0.212132 0.212132 3.000000
+      vertex 0.259808 0.150000 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.212132 0.212132 0.000000
+      vertex 0.259808 0.150000 0.000000
+    endloop
+  endfacet
+  facet normal 0.760430 0.583498 0.285090
+    outer loop
+      vertex 0.259808 0.150000 3.000000
+      vertex 0.212132 0.212132 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.608761 0.793353 0.000000
+    outer loop
+      vertex 0.212132 0.212132 0.000000
+      vertex 0.150000 0.259808 0.000000
+      vertex 0.150000 0.259808 3.000000
+    endloop
+  endfacet
+  facet normal 0.608761 0.793353 -0.000000
+    outer loop
+      vertex 0.212132 0.212132 0.000000
+      vertex 0.150000 0.259808 3.000000
+      vertex 0.212132 0.212132 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.150000 0.259808 0.000000
+      vertex 0.212132 0.212132 0.000000
+    endloop
+  endfacet
+  facet normal 0.583498 0.760430 0.285090
+    outer loop
+      vertex 0.212132 0.212132 3.000000
+      vertex 0.150000 0.259808 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.382683 0.923880 0.000000
+    outer loop
+      vertex 0.150000 0.259808 0.000000
+      vertex 0.077646 0.289778 0.000000
+      vertex 0.077646 0.289778 3.000000
+    endloop
+  endfacet
+  facet normal 0.382683 0.923880 -0.000000
+    outer loop
+      vertex 0.150000 0.259808 0.000000
+      vertex 0.077646 0.289778 3.000000
+      vertex 0.150000 0.259808 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.077646 0.289778 0.000000
+      vertex 0.150000 0.259808 0.000000
+    endloop
+  endfacet
+  facet normal 0.366802 0.885539 0.285090
+    outer loop
+      vertex 0.150000 0.259808 3.000000
+      vertex 0.077646 0.289778 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.130526 0.991445 0.000000
+    outer loop
+      vertex 0.077646 0.289778 0.000000
+      vertex 0.000000 0.300000 0.000000
+      vertex 0.000000 0.300000 3.000000
+    endloop
+  endfacet
+  facet normal 0.130526 0.991445 -0.000000
+    outer loop
+      vertex 0.077646 0.289778 0.000000
+      vertex 0.000000 0.300000 3.000000
+      vertex 0.077646 0.289778 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.000000 0.300000 0.000000
+      vertex 0.077646 0.289778 0.000000
+    endloop
+  endfacet
+  facet normal 0.125109 0.950301 0.285090
+    outer loop
+      vertex 0.077646 0.289778 3.000000
+      vertex 0.000000 0.300000 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.130526 0.991445 0.000000
+    outer loop
+      vertex 0.000000 0.300000 0.000000
+      vertex -0.077646 0.289778 0.000000
+      vertex -0.077646 0.289778 3.000000
+    endloop
+  endfacet
+  facet normal -0.130526 0.991445 0.000000
+    outer loop
+      vertex 0.000000 0.300000 0.000000
+      vertex -0.077646 0.289778 3.000000
+      vertex 0.000000 0.300000 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.077646 0.289778 0.000000
+      vertex 0.000000 0.300000 0.000000
+    endloop
+  endfacet
+  facet normal -0.125109 0.950301 0.285090
+    outer loop
+      vertex 0.000000 0.300000 3.000000
+      vertex -0.077646 0.289778 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.382683 0.923880 0.000000
+    outer loop
+      vertex -0.077646 0.289778 0.000000
+      vertex -0.150000 0.259808 0.000000
+      vertex -0.150000 0.259808 3.000000
+    endloop
+  endfacet
+  facet normal -0.382683 0.923880 0.000000
+    outer loop
+      vertex -0.077646 0.289778 0.000000
+      vertex -0.150000 0.259808 3.000000
+      vertex -0.077646 0.289778 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.150000 0.259808 0.000000
+      vertex -0.077646 0.289778 0.000000
+    endloop
+  endfacet
+  facet normal -0.366802 0.885539 0.285090
+    outer loop
+      vertex -0.077646 0.289778 3.000000
+      vertex -0.150000 0.259808 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.608761 0.793353 0.000000
+    outer loop
+      vertex -0.150000 0.259808 0.000000
+      vertex -0.212132 0.212132 0.000000
+      vertex -0.212132 0.212132 3.000000
+    endloop
+  endfacet
+  facet normal -0.608761 0.793353 0.000000
+    outer loop
+      vertex -0.150000 0.259808 0.000000
+      vertex -0.212132 0.212132 3.000000
+      vertex -0.150000 0.259808 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.212132 0.212132 0.000000
+      vertex -0.150000 0.259808 0.000000
+    endloop
+  endfacet
+  facet normal -0.583498 0.760430 0.285090
+    outer loop
+      vertex -0.150000 0.259808 3.000000
+      vertex -0.212132 0.212132 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.793353 0.608761 0.000000
+    outer loop
+      vertex -0.212132 0.212132 0.000000
+      vertex -0.259808 0.150000 0.000000
+      vertex -0.259808 0.150000 3.000000
+    endloop
+  endfacet
+  facet normal -0.793353 0.608761 0.000000
+    outer loop
+      vertex -0.212132 0.212132 0.000000
+      vertex -0.259808 0.150000 3.000000
+      vertex -0.212132 0.212132 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.259808 0.150000 0.000000
+      vertex -0.212132 0.212132 0.000000
+    endloop
+  endfacet
+  facet normal -0.760430 0.583498 0.285090
+    outer loop
+      vertex -0.212132 0.212132 3.000000
+      vertex -0.259808 0.150000 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.923880 0.382683 0.000000
+    outer loop
+      vertex -0.259808 0.150000 0.000000
+      vertex -0.289778 0.077646 0.000000
+      vertex -0.289778 0.077646 3.000000
+    endloop
+  endfacet
+  facet normal -0.923880 0.382683 0.000000
+    outer loop
+      vertex -0.259808 0.150000 0.000000
+      vertex -0.289778 0.077646 3.000000
+      vertex -0.259808 0.150000 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.289778 0.077646 0.000000
+      vertex -0.259808 0.150000 0.000000
+    endloop
+  endfacet
+  facet normal -0.885539 0.366802 0.285090
+    outer loop
+      vertex -0.259808 0.150000 3.000000
+      vertex -0.289778 0.077646 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.991445 0.130526 0.000000
+    outer loop
+      vertex -0.289778 0.077646 0.000000
+      vertex -0.300000 0.000000 0.000000
+      vertex -0.300000 0.000000 3.000000
+    endloop
+  endfacet
+  facet normal -0.991445 0.130526 0.000000
+    outer loop
+      vertex -0.289778 0.077646 0.000000
+      vertex -0.300000 0.000000 3.000000
+      vertex -0.289778 0.077646 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.300000 0.000000 0.000000
+      vertex -0.289778 0.077646 0.000000
+    endloop
+  endfacet
+  facet normal -0.950301 0.125109 0.285090
+    outer loop
+      vertex -0.289778 0.077646 3.000000
+      vertex -0.300000 0.000000 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.991445 -0.130526 0.000000
+    outer loop
+      vertex -0.300000 0.000000 0.000000
+      vertex -0.289778 -0.077646 0.000000
+      vertex -0.289778 -0.077646 3.000000
+    endloop
+  endfacet
+  facet normal -0.991445 -0.130526 0.000000
+    outer loop
+      vertex -0.300000 0.000000 0.000000
+      vertex -0.289778 -0.077646 3.000000
+      vertex -0.300000 0.000000 3.000000
+    endloop
+  endfacet
+  facet normal -0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.289778 -0.077646 0.000000
+      vertex -0.300000 0.000000 0.000000
+    endloop
+  endfacet
+  facet normal -0.950301 -0.125109 0.285090
+    outer loop
+      vertex -0.300000 0.000000 3.000000
+      vertex -0.289778 -0.077646 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.923880 -0.382683 0.000000
+    outer loop
+      vertex -0.289778 -0.077646 0.000000
+      vertex -0.259808 -0.150000 0.000000
+      vertex -0.259808 -0.150000 3.000000
+    endloop
+  endfacet
+  facet normal -0.923880 -0.382683 0.000000
+    outer loop
+      vertex -0.289778 -0.077646 0.000000
+      vertex -0.259808 -0.150000 3.000000
+      vertex -0.289778 -0.077646 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.259808 -0.150000 0.000000
+      vertex -0.289778 -0.077646 0.000000
+    endloop
+  endfacet
+  facet normal -0.885539 -0.366802 0.285090
+    outer loop
+      vertex -0.289778 -0.077646 3.000000
+      vertex -0.259808 -0.150000 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.793353 -0.608761 0.000000
+    outer loop
+      vertex -0.259808 -0.150000 0.000000
+      vertex -0.212132 -0.212132 0.000000
+      vertex -0.212132 -0.212132 3.000000
+    endloop
+  endfacet
+  facet normal -0.793353 -0.608761 0.000000
+    outer loop
+      vertex -0.259808 -0.150000 0.000000
+      vertex -0.212132 -0.212132 3.000000
+      vertex -0.259808 -0.150000 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.212132 -0.212132 0.000000
+      vertex -0.259808 -0.150000 0.000000
+    endloop
+  endfacet
+  facet normal -0.760430 -0.583498 0.285090
+    outer loop
+      vertex -0.259808 -0.150000 3.000000
+      vertex -0.212132 -0.212132 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.608761 -0.793353 0.000000
+    outer loop
+      vertex -0.212132 -0.212132 0.000000
+      vertex -0.150000 -0.259808 0.000000
+      vertex -0.150000 -0.259808 3.000000
+    endloop
+  endfacet
+  facet normal -0.608761 -0.793353 0.000000
+    outer loop
+      vertex -0.212132 -0.212132 0.000000
+      vertex -0.150000 -0.259808 3.000000
+      vertex -0.212132 -0.212132 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.150000 -0.259808 0.000000
+      vertex -0.212132 -0.212132 0.000000
+    endloop
+  endfacet
+  facet normal -0.583498 -0.760430 0.285090
+    outer loop
+      vertex -0.212132 -0.212132 3.000000
+      vertex -0.150000 -0.259808 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.382683 -0.923880 0.000000
+    outer loop
+      vertex -0.150000 -0.259808 0.000000
+      vertex -0.077646 -0.289778 0.000000
+      vertex -0.077646 -0.289778 3.000000
+    endloop
+  endfacet
+  facet normal -0.382683 -0.923880 0.000000
+    outer loop
+      vertex -0.150000 -0.259808 0.000000
+      vertex -0.077646 -0.289778 3.000000
+      vertex -0.150000 -0.259808 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.077646 -0.289778 0.000000
+      vertex -0.150000 -0.259808 0.000000
+    endloop
+  endfacet
+  facet normal -0.366802 -0.885539 0.285090
+    outer loop
+      vertex -0.150000 -0.259808 3.000000
+      vertex -0.077646 -0.289778 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal -0.130526 -0.991445 0.000000
+    outer loop
+      vertex -0.077646 -0.289778 0.000000
+      vertex -0.000000 -0.300000 0.000000
+      vertex -0.000000 -0.300000 3.000000
+    endloop
+  endfacet
+  facet normal -0.130526 -0.991445 0.000000
+    outer loop
+      vertex -0.077646 -0.289778 0.000000
+      vertex -0.000000 -0.300000 3.000000
+      vertex -0.077646 -0.289778 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex -0.000000 -0.300000 0.000000
+      vertex -0.077646 -0.289778 0.000000
+    endloop
+  endfacet
+  facet normal -0.125109 -0.950301 0.285090
+    outer loop
+      vertex -0.077646 -0.289778 3.000000
+      vertex -0.000000 -0.300000 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.130526 -0.991445 0.000000
+    outer loop
+      vertex -0.000000 -0.300000 0.000000
+      vertex 0.077646 -0.289778 0.000000
+      vertex 0.077646 -0.289778 3.000000
+    endloop
+  endfacet
+  facet normal 0.130526 -0.991445 0.000000
+    outer loop
+      vertex -0.000000 -0.300000 0.000000
+      vertex 0.077646 -0.289778 3.000000
+      vertex -0.000000 -0.300000 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 -0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.077646 -0.289778 0.000000
+      vertex -0.000000 -0.300000 0.000000
+    endloop
+  endfacet
+  facet normal 0.125109 -0.950301 0.285090
+    outer loop
+      vertex -0.000000 -0.300000 3.000000
+      vertex 0.077646 -0.289778 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.382683 -0.923880 0.000000
+    outer loop
+      vertex 0.077646 -0.289778 0.000000
+      vertex 0.150000 -0.259808 0.000000
+      vertex 0.150000 -0.259808 3.000000
+    endloop
+  endfacet
+  facet normal 0.382683 -0.923880 0.000000
+    outer loop
+      vertex 0.077646 -0.289778 0.000000
+      vertex 0.150000 -0.259808 3.000000
+      vertex 0.077646 -0.289778 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.150000 -0.259808 0.000000
+      vertex 0.077646 -0.289778 0.000000
+    endloop
+  endfacet
+  facet normal 0.366802 -0.885539 0.285090
+    outer loop
+      vertex 0.077646 -0.289778 3.000000
+      vertex 0.150000 -0.259808 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.608761 -0.793353 0.000000
+    outer loop
+      vertex 0.150000 -0.259808 0.000000
+      vertex 0.212132 -0.212132 0.000000
+      vertex 0.212132 -0.212132 3.000000
+    endloop
+  endfacet
+  facet normal 0.608761 -0.793353 0.000000
+    outer loop
+      vertex 0.150000 -0.259808 0.000000
+      vertex 0.212132 -0.212132 3.000000
+      vertex 0.150000 -0.259808 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.212132 -0.212132 0.000000
+      vertex 0.150000 -0.259808 0.000000
+    endloop
+  endfacet
+  facet normal 0.583498 -0.760430 0.285090
+    outer loop
+      vertex 0.150000 -0.259808 3.000000
+      vertex 0.212132 -0.212132 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.793353 -0.608761 0.000000
+    outer loop
+      vertex 0.212132 -0.212132 0.000000
+      vertex 0.259808 -0.150000 0.000000
+      vertex 0.259808 -0.150000 3.000000
+    endloop
+  endfacet
+  facet normal 0.793353 -0.608761 0.000000
+    outer loop
+      vertex 0.212132 -0.212132 0.000000
+      vertex 0.259808 -0.150000 3.000000
+      vertex 0.212132 -0.212132 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.259808 -0.150000 0.000000
+      vertex 0.212132 -0.212132 0.000000
+    endloop
+  endfacet
+  facet normal 0.760430 -0.583498 0.285090
+    outer loop
+      vertex 0.212132 -0.212132 3.000000
+      vertex 0.259808 -0.150000 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.923880 -0.382683 0.000000
+    outer loop
+      vertex 0.259808 -0.150000 0.000000
+      vertex 0.289778 -0.077646 0.000000
+      vertex 0.289778 -0.077646 3.000000
+    endloop
+  endfacet
+  facet normal 0.923880 -0.382683 0.000000
+    outer loop
+      vertex 0.259808 -0.150000 0.000000
+      vertex 0.289778 -0.077646 3.000000
+      vertex 0.259808 -0.150000 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.289778 -0.077646 0.000000
+      vertex 0.259808 -0.150000 0.000000
+    endloop
+  endfacet
+  facet normal 0.885539 -0.366802 0.285090
+    outer loop
+      vertex 0.259808 -0.150000 3.000000
+      vertex 0.289778 -0.077646 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+  facet normal 0.991445 -0.130526 0.000000
+    outer loop
+      vertex 0.289778 -0.077646 0.000000
+      vertex 0.300000 0.000000 0.000000
+      vertex 0.300000 0.000000 3.000000
+    endloop
+  endfacet
+  facet normal 0.991445 -0.130526 0.000000
+    outer loop
+      vertex 0.289778 -0.077646 0.000000
+      vertex 0.300000 0.000000 3.000000
+      vertex 0.289778 -0.077646 3.000000
+    endloop
+  endfacet
+  facet normal 0.000000 0.000000 -1.000000
+    outer loop
+      vertex 0.000000 0.000000 0.000000
+      vertex 0.300000 0.000000 0.000000
+      vertex 0.289778 -0.077646 0.000000
+    endloop
+  endfacet
+  facet normal 0.950301 -0.125109 0.285090
+    outer loop
+      vertex 0.289778 -0.077646 3.000000
+      vertex 0.300000 0.000000 3.000000
+      vertex 0.000000 0.000000 4.000000
+    endloop
+  endfacet
+endsolid default_rocket
diff --git a/rocketpy/plots/compare/compare_flights.py b/rocketpy/plots/compare/compare_flights.py
index 4ff064858..0694d333c 100644
--- a/rocketpy/plots/compare/compare_flights.py
+++ b/rocketpy/plots/compare/compare_flights.py
@@ -1,11 +1,15 @@
 # TODO: remove this disable once the code is refactored
 # pylint: disable=nested-min-max
+import logging
+
 import matplotlib.pyplot as plt
 import numpy as np
 
 from ..plot_helpers import show_or_save_fig, show_or_save_plot
 from .compare import Compare
 
+logger = logging.getLogger(__name__)
+
 # TODO: needs to refactor this class to use the show_or_save_plot
 
 
@@ -94,7 +98,7 @@ def __process_savefig(self, filename, fig):
         """
         show_or_save_fig(fig, filename)
         if filename:
-            print("Plot saved to file: " + filename)
+            logger.info("Plot saved to file: %s", filename)
         else:
             plt.show()
 
@@ -1084,7 +1088,7 @@ def stability_margin(
         None
         """
 
-        print("This method is not implemented yet")
+        logger.warning("This method is not implemented yet.")
 
     def attitude_frequency(
         self,
@@ -1123,7 +1127,7 @@ def attitude_frequency(
         None
         """
 
-        print("This method is not implemented yet")
+        logger.warning("This method is not implemented yet.")
 
     @staticmethod
     def compare_trajectories_3d(  # pylint: disable=too-many-statements
diff --git a/rocketpy/plots/flight_plots.py b/rocketpy/plots/flight_plots.py
index 7eb41a8b2..e255831be 100644
--- a/rocketpy/plots/flight_plots.py
+++ b/rocketpy/plots/flight_plots.py
@@ -1,10 +1,17 @@
+import logging
+import os
+import time
 from functools import cached_property
+from importlib import resources
 
 import matplotlib.pyplot as plt
 import numpy as np
 
+from ..tools import import_optional_dependency
 from .plot_helpers import show_or_save_plot
 
+logger = logging.getLogger(__name__)
+
 
 class _FlightPlots:
     """Class that holds plot methods for Flight class.
@@ -133,6 +140,278 @@ def trajectory_3d(self, *, filename=None):  # pylint: disable=too-many-statement
         ax1.set_box_aspect(None, zoom=0.95)  # 95% for label adjustment
         show_or_save_plot(filename)
 
+    def _resolve_animation_model_path(self, file_name):
+        """Resolve model path, defaulting to the built-in STL when omitted."""
+        if file_name is not None:
+            return file_name
+
+        return str(
+            resources.files("rocketpy.plots").joinpath("assets/default_rocket.stl")
+        )
+
+    def _validate_animation_inputs(self, file_name, start, stop, time_step):
+        """Validate shared input parameters for 3D animation methods."""
+        if time_step <= 0:
+            raise ValueError(
+                f"Invalid time_step: {time_step}. It must be greater than 0."
+            )
+
+        if stop is None:
+            stop = self.flight.t_final
+
+        if (
+            start < 0
+            or stop < 0
+            or start > self.flight.t_final
+            or stop > self.flight.t_final
+            or start >= stop
+        ):
+            raise ValueError(
+                f"Invalid animation time range: start={start}, stop={stop}. "
+                f"Both must be within [0, {self.flight.t_final}] and start < stop."
+            )
+
+        if not os.path.isfile(file_name):
+            raise FileNotFoundError(
+                f"Could not find the 3D model file: '{file_name}'. "
+                "Provide a valid .stl file path."
+            )
+
+        return stop
+
+    @staticmethod
+    def _rotation_from_quaternion(q0, q1, q2, q3):
+        """Convert unit quaternion to axis-angle representation in degrees."""
+        norm = np.sqrt(q0 * q0 + q1 * q1 + q2 * q2 + q3 * q3)
+        if norm == 0:
+            return 0.0, (1.0, 0.0, 0.0)
+
+        q0 = q0 / norm
+        q1 = q1 / norm
+        q2 = q2 / norm
+        q3 = q3 / norm
+
+        # q and -q represent the same orientation. Keep q0 non-negative to
+        # reduce discontinuities in axis-angle interpolation across frames.
+        if q0 < 0:
+            q0 = -q0
+            q1 = -q1
+            q2 = -q2
+            q3 = -q3
+
+        q0 = np.clip(q0, -1.0, 1.0)
+        angle = 2 * np.arccos(q0)
+        sin_half = np.sqrt(max(1 - q0 * q0, 0.0))
+
+        if sin_half < 1e-12:
+            return 0.0, (1.0, 0.0, 0.0)
+
+        axis = (q1 / sin_half, q2 / sin_half, q3 / sin_half)
+        return np.degrees(angle), axis
+
+    def _create_animation_box(self, start, scale=1.0):
+        """Create a world box with minimum visible dimensions."""
+        min_box_dim = 10.0
+        x_values = self.flight.x[:, 1]
+        y_values = self.flight.y[:, 1]
+        z_values = self.flight.z[:, 1] - self.flight.env.elevation
+
+        center_x = 0.5 * (np.max(x_values) + np.min(x_values))
+        center_y = 0.5 * (np.max(y_values) + np.min(y_values))
+        center_z = max(self.flight.z(start) - self.flight.env.elevation, 0.0)
+
+        length = max(np.ptp(x_values) * scale, min_box_dim)
+        width = max(np.ptp(y_values) * scale, min_box_dim)
+        height = max(np.ptp(z_values) * scale, min_box_dim)
+
+        # Keep z center inside visible space while preserving minimum box size.
+        center_z = max(center_z, 0.5 * min_box_dim)
+
+        vedo = import_optional_dependency("vedo")
+
+        return vedo.Box(
+            pos=[center_x, center_y, center_z],
+            length=length,
+            width=width,
+            height=height,
+        ).wireframe()
+
+    @staticmethod
+    def _require_interactive_vedo_backend(vedo):
+        """Ensure vedo can open an interactive VTK window for the animation.
+
+        The animations drive an interactive render loop, which needs a desktop
+        window. In Jupyter/headless environments vedo defaults to the ``"2d"``
+        backend, where every ``render()`` call fails with the cryptic
+        ``"No active Plotter found for the 2d backend"``. Fail early with a
+        clear, actionable message instead.
+        """
+        if getattr(vedo.settings, "default_backend", None) == "2d":
+            raise RuntimeError(
+                "Rocket animations require an interactive VTK window, which is "
+                "not available with vedo's '2d' backend (the default inside "
+                "Jupyter notebooks and headless environments). Run this from a "
+                "Python script, or switch vedo to a desktop backend before "
+                "calling it:\n"
+                "    import vedo\n"
+                "    vedo.settings.default_backend = 'vtk'"
+            )
+
+    def animate_trajectory(  # pylint: disable=too-many-statements
+        self, file_name=None, start=0, stop=None, time_step=0.1, **kwargs
+    ):
+        """Animate 6-DOF trajectory and attitude using vedo.
+
+        Parameters
+        ----------
+        file_name : str | None, optional
+            Path to a 3D model file representing the rocket, usually ``.stl``.
+            If None, RocketPy uses a built-in default STL model.
+            Default is None.
+        start : int, float, optional
+            Animation start time in seconds. Default is 0.
+        stop : int, float | None, optional
+            Animation end time in seconds. If None, uses ``flight.t_final``.
+            Default is None.
+        time_step : float, optional
+            Animation frame step in seconds. Must be greater than 0.
+            Default is 0.1.
+        **kwargs : dict, optional
+            Additional keyword arguments passed to ``vedo.Plotter.show``.
+        """
+
+        vedo = import_optional_dependency("vedo")
+        self._require_interactive_vedo_backend(vedo)
+
+        file_name = self._resolve_animation_model_path(file_name)
+        stop = self._validate_animation_inputs(file_name, start, stop, time_step)
+
+        try:
+            vedo.settings.allow_interaction = True
+        except AttributeError:
+            pass
+
+        world = self._create_animation_box(start, scale=1.2)
+        base_rocket = vedo.Mesh(file_name).c("green")
+        time_steps = np.arange(start, stop, time_step)
+        trajectory_points = []
+
+        plt = vedo.Plotter(axes=1, interactive=False)
+        plt.show(world, "Rocket Trajectory Animation", viewup="z", **kwargs)
+
+        for t in time_steps:
+            rocket = base_rocket.clone()
+            x_position = self.flight.x(t)
+            y_position = self.flight.y(t)
+            z_position = self.flight.z(t) - self.flight.env.elevation
+
+            angle_deg, axis = self._rotation_from_quaternion(
+                self.flight.e0(t),
+                self.flight.e1(t),
+                self.flight.e2(t),
+                self.flight.e3(t),
+            )
+
+            rocket.pos(x_position, y_position, z_position)
+            if angle_deg != 0.0:
+                # Rotate about the rocket's placed position. vedo's rotate()
+                # rotates about the world origin by default, which would map the
+                # model to R @ pos and displace it from its trajectory point.
+                rocket.rotate(
+                    angle_deg,
+                    axis=axis,
+                    point=(x_position, y_position, z_position),
+                )
+
+            trajectory_points.append([x_position, y_position, z_position])
+            actors = [world, rocket]
+            if len(trajectory_points) > 1:
+                actors.append(vedo.Line(trajectory_points, c="k", alpha=0.5))
+
+            plt.show(*actors, resetcam=False)
+
+            start_pause = time.time()
+            while time.time() - start_pause < time_step:
+                plt.render()
+                time.sleep(0.001)  # yield the CPU instead of busy-spinning
+
+            if getattr(plt, "escaped", False):
+                break
+
+        plt.interactive().close()
+
+    def animate_rotate(  # pylint: disable=too-many-statements
+        self, file_name=None, start=0, stop=None, time_step=0.1, **kwargs
+    ):
+        """Animate rocket attitude (rotation-only view) using vedo.
+
+        Parameters
+        ----------
+        file_name : str | None, optional
+            Path to a 3D model file representing the rocket, usually ``.stl``.
+            If None, RocketPy uses a built-in default STL model.
+            Default is None.
+        start : int, float, optional
+            Animation start time in seconds. Default is 0.
+        stop : int, float | None, optional
+            Animation end time in seconds. If None, uses ``flight.t_final``.
+            Default is None.
+        time_step : float, optional
+            Animation frame step in seconds. Must be greater than 0.
+            Default is 0.1.
+        **kwargs : dict, optional
+            Additional keyword arguments passed to ``vedo.Plotter.show``.
+        """
+
+        vedo = import_optional_dependency("vedo")
+        self._require_interactive_vedo_backend(vedo)
+
+        file_name = self._resolve_animation_model_path(file_name)
+        stop = self._validate_animation_inputs(file_name, start, stop, time_step)
+
+        try:
+            vedo.settings.allow_interaction = True
+        except AttributeError:
+            pass
+
+        world = self._create_animation_box(start, scale=0.3)
+        base_rocket = vedo.Mesh(file_name).c("green")
+        time_steps = np.arange(start, stop, time_step)
+
+        x_start = self.flight.x(start)
+        y_start = self.flight.y(start)
+        z_start = self.flight.z(start) - self.flight.env.elevation
+
+        plt = vedo.Plotter(axes=1, interactive=False)
+        plt.show(world, "Rocket Rotation Animation", viewup="z", **kwargs)
+
+        for t in time_steps:
+            rocket = base_rocket.clone()
+            angle_deg, axis = self._rotation_from_quaternion(
+                self.flight.e0(t),
+                self.flight.e1(t),
+                self.flight.e2(t),
+                self.flight.e3(t),
+            )
+
+            rocket.pos(x_start, y_start, z_start)
+            if angle_deg != 0.0:
+                # Rotate about the rocket's placed position (vedo rotates about
+                # the world origin by default, which would displace the model).
+                rocket.rotate(angle_deg, axis=axis, point=(x_start, y_start, z_start))
+
+            plt.show(world, rocket, resetcam=False)
+
+            start_pause = time.time()
+            while time.time() - start_pause < time_step:
+                plt.render()
+                time.sleep(0.001)  # yield the CPU instead of busy-spinning
+
+            if getattr(plt, "escaped", False):
+                break
+
+        plt.interactive().close()
+
     def linear_kinematics_data(self, *, filename=None):  # pylint: disable=too-many-statements
         """Prints out all Kinematics graphs available about the Flight
 
@@ -411,16 +690,20 @@ def rail_buttons_bending_moments(self, *, filename=None):
         None
         """
         if len(self.flight.rocket.rail_buttons) == 0:
-            print(
+            logger.warning(
                 "No rail buttons were defined. Skipping rail button bending moment plots."
             )
         elif self.flight.out_of_rail_time_index == 0:
-            print("No rail phase was found. Skipping rail button bending moment plots.")
+            logger.warning(
+                "No rail phase was found. Skipping rail button bending moment plots."
+            )
         else:
             # Check if button_height is defined
             rail_buttons_tuple = self.flight.rocket.rail_buttons[0]
             if rail_buttons_tuple.component.button_height is None:
-                print("Rail button height not defined. Skipping bending moment plots.")
+                logger.warning(
+                    "Rail button height not defined. Skipping bending moment plots."
+                )
             else:
                 plt.figure(figsize=(9, 3))
 
@@ -475,9 +758,9 @@ def rail_buttons_forces(self, *, filename=None):  # pylint: disable=too-many-sta
         None
         """
         if len(self.flight.rocket.rail_buttons) == 0:
-            print("No rail buttons were defined. Skipping rail button plots.")
+            logger.warning("No rail buttons were defined. Skipping rail button plots.")
         elif self.flight.out_of_rail_time_index == 0:
-            print("No rail phase was found. Skipping rail button plots.")
+            logger.warning("No rail phase was found. Skipping rail button plots.")
         else:
             plt.figure(figsize=(9, 6))
 
@@ -771,6 +1054,18 @@ def energy_data(self, *, filename=None):  # pylint: disable=too-many-statements
         plt.subplots_adjust(hspace=1)
         show_or_save_plot(filename)
 
+    @staticmethod
+    def __signed_angle_ylim(angle_function, t_start, t_end, margin=5):
+        """Return ``(ymin, ymax)`` limits for a signed angle plotted between
+        ``t_start`` and ``t_end``. The range is based only on the samples inside
+        that time window so the full (positive and negative) oscillation is
+        visible, unlike a fixed floor at zero which would clip it.
+        """
+        data = angle_function[:, :]
+        mask = (data[:, 0] >= t_start) & (data[:, 0] <= t_end)
+        values = data[mask, 1] if np.any(mask) else data[:, 1]
+        return values.min() - margin, values.max() + margin
+
     def fluid_mechanics_data(self, *, filename=None):  # pylint: disable=too-many-statements
         """Prints out a summary of the Fluid Mechanics graphs available about
         the Flight
@@ -848,8 +1143,15 @@ def fluid_mechanics_data(self, *, filename=None):  # pylint: disable=too-many-st
         ax5.set_xlabel("Time (s)")
         ax5.set_ylabel("Partial Angle of Attack (°)")
         ax5.set_xlim(self.flight.out_of_rail_time, self.first_event_time)
+        # Partial angle of attack is a signed angle oscillating around zero, so
+        # scale to the data in the plotted window instead of flooring at 0
+        # (which would clip the negative half of the oscillation).
         ax5.set_ylim(
-            0, self.flight.partial_angle_of_attack(self.flight.out_of_rail_time) + 15
+            *self.__signed_angle_ylim(
+                self.flight.partial_angle_of_attack,
+                self.flight.out_of_rail_time,
+                self.first_event_time,
+            )
         )
         ax5.grid()
 
@@ -861,8 +1163,13 @@ def fluid_mechanics_data(self, *, filename=None):  # pylint: disable=too-many-st
         ax6.set_xlabel("Time (s)")
         ax6.set_ylabel("Angle of Sideslip (°)")
         ax6.set_xlim(self.flight.out_of_rail_time, self.first_event_time)
+        # Sideslip is also signed; keep the full oscillation visible.
         ax6.set_ylim(
-            0, self.flight.angle_of_sideslip(self.flight.out_of_rail_time) + 15
+            *self.__signed_angle_ylim(
+                self.flight.angle_of_sideslip,
+                self.flight.out_of_rail_time,
+                self.first_event_time,
+            )
         )
         ax6.grid()
 
@@ -1002,14 +1309,113 @@ def pressure_signals(self):
         None
         """
 
-        if len(self.flight.parachute_events) > 0:
-            for parachute in self.flight.rocket.parachutes:
-                print("\nParachute: ", parachute.name)
-                parachute.noise_signal_function()
-                parachute.noisy_pressure_signal_function()
-                parachute.clean_pressure_signal_function()
+        if len(self.flight.parachute_events) == 0:
+            logger.warning("Rocket has no parachutes. No parachute plots available.")
+            return
+
+        for parachute in self.flight.rocket.parachutes:
+            clean = parachute.clean_pressure_signal_function
+            noisy = parachute.noisy_pressure_signal_function
+            # Nothing was recorded (e.g. parachute never triggered)
+            if not isinstance(clean.source, np.ndarray) or clean.source.ndim != 2:
+                continue
+            time_signal = clean.source[:, 0]
+
+            plt.figure(figsize=(9, 4))
+            plt.plot(
+                time_signal, clean(time_signal), label="Without noise", linewidth=1.5
+            )
+            plt.plot(
+                time_signal,
+                noisy(time_signal),
+                label="With noise",
+                alpha=0.7,
+                linewidth=0.8,
+            )
+            plt.title(f"Parachute trigger pressure signal: {parachute.name}")
+            plt.xlabel("Time (s)")
+            plt.ylabel("Pressure (Pa)")
+            plt.legend()
+            plt.grid(True)
+            show_or_save_plot()
+
+    def parachutes_info(self, parachute_name="all"):
+        """Plots parachute dynamic information.
+        This function plots the dynamic relevant information to each parachute.
+        Different parachute models have different dynamic variables. It is
+        assumed that the 'parachutes_info' members have the dynamic variables
+        together with their respective time
+
+        Parameters
+        ----------
+        parachute_name : str | optional
+            The parachute name to display information. Default is 'all', in
+            which case information about all parachutes are plotted.
+
+        Returns
+        -------
+        None
+        """
+        # Parachute dynamic information (e.g. drag) is saved during
+        # post-processing, which is evaluated lazily. Accessing a post-processed
+        # variable forces it to run, so this plot works even when called before
+        # any other post-processed variable has been accessed.
+        _ = self.flight.ax
+
+        if not getattr(self.flight, "parachutes_info", None):
+            print("\nFlight has no parachute dynamic information available.")
+            return
+
+        if parachute_name == "all":
+            items = list(self.flight.parachutes_info.items())
+        elif parachute_name in self.flight.parachutes_info:
+            items = [(parachute_name, self.flight.parachutes_info[parachute_name])]
         else:
-            print("\nRocket has no parachutes. No parachute plots available")
+            print(
+                f"\nNo dynamic information available for parachute "
+                f"'{parachute_name}'. It may not have been deployed during the "
+                f"flight. Available parachutes: "
+                f"{list(self.flight.parachutes_info.keys())}."
+            )
+            return
+
+        # Gather every dynamic variable across the selected parachutes so each
+        # one is drawn on a single figure with all parachutes overlaid.
+        variables = []
+        for _, parachute_variables in items:
+            for variable in parachute_variables:
+                if variable != "t" and variable not in variables:
+                    variables.append(variable)
+
+        for variable in variables:
+            self.__plot_parachute_variable(variable, items)
+
+    # Axis label (and unit) for each known parachute dynamic variable.
+    __parachute_variable_labels = {"drag": ("Drag Force", "N")}
+
+    def __plot_parachute_variable(self, variable, items):
+        """Plot a single parachute dynamic variable (e.g. drag) for every
+        parachute in ``items`` overlaid on one figure, one colour each."""
+        label, unit = self.__parachute_variable_labels.get(
+            variable, (variable.replace("_", " ").title(), "")
+        )
+        ylabel = f"{label} ({unit})" if unit else label
+
+        plt.figure(figsize=(9, 4))
+        for name, parachute_variables in items:
+            if variable not in parachute_variables:
+                continue
+            plt.plot(
+                parachute_variables["t"],
+                parachute_variables[variable],
+                label=name,
+            )
+        plt.title(f"Parachute {label} vs Time")
+        plt.xlabel("Time (s)")
+        plt.ylabel(ylabel)
+        plt.legend()
+        plt.grid(True)
+        show_or_save_plot()
 
     def all(self):  # pylint: disable=too-many-statements
         """Prints out all plots available about the Flight.
@@ -1028,7 +1434,7 @@ def all(self):  # pylint: disable=too-many-statements
         print("\n\nAngular Position Plots\n")
         self.flight_path_angle_data()
 
-        print("\n\nPath, Attitude and Lateral Attitude Angle plots\n")
+        print("\n\nPath, Attitude and Lateral Attitude Angle Plots\n")
         self.attitude_data()
 
         print("\n\nTrajectory Angular Velocity and Acceleration Plots\n")
@@ -1055,3 +1461,4 @@ def all(self):  # pylint: disable=too-many-statements
         print("\n\nRocket and Parachute Pressure Plots\n")
         self.pressure_rocket_altitude()
         self.pressure_signals()
+        self.parachutes_info()
diff --git a/rocketpy/plots/monte_carlo_plots.py b/rocketpy/plots/monte_carlo_plots.py
index e9ce4ef3a..aeb0f2746 100644
--- a/rocketpy/plots/monte_carlo_plots.py
+++ b/rocketpy/plots/monte_carlo_plots.py
@@ -1,3 +1,4 @@
+import logging
 import urllib
 from pathlib import Path
 
@@ -14,6 +15,8 @@
 )
 from .plot_helpers import show_or_save_plot
 
+logger = logging.getLogger(__name__)
+
 
 class _MonteCarloPlots:
     """Class to plot the Monte Carlo analysis results."""
@@ -265,14 +268,14 @@ def ellipses(
             apogee_x = np.array(self.monte_carlo.results["apogee_x"])
             apogee_y = np.array(self.monte_carlo.results["apogee_y"])
         except KeyError:
-            print("No apogee data found. Skipping apogee ellipses.")
+            logger.warning("No apogee data found. Skipping apogee ellipses.")
             apogee_x = np.array([])
             apogee_y = np.array([])
         try:
             impact_x = np.array(self.monte_carlo.results["x_impact"])
             impact_y = np.array(self.monte_carlo.results["y_impact"])
         except KeyError:
-            print("No impact data found. Skipping impact ellipses.")
+            logger.warning("No impact data found. Skipping impact ellipses.")
             impact_x = np.array([])
             impact_y = np.array([])
 
@@ -557,7 +560,7 @@ def ellipses_comparison(
             other_apogee_x = np.array(other_monte_carlo.results["apogee_x"])
             other_apogee_y = np.array(other_monte_carlo.results["apogee_y"])
         except KeyError:
-            print("No apogee data found. Skipping apogee ellipses.")
+            logger.warning("No apogee data found. Skipping apogee ellipses.")
             original_apogee_x = np.array([])
             original_apogee_y = np.array([])
             other_apogee_x = np.array([])
@@ -568,7 +571,7 @@ def ellipses_comparison(
             other_impact_x = np.array(other_monte_carlo.results["x_impact"])
             other_impact_y = np.array(other_monte_carlo.results["y_impact"])
         except KeyError:
-            print("No impact data found. Skipping impact ellipses.")
+            logger.warning("No impact data found. Skipping impact ellipses.")
             original_impact_x = np.array([])
             original_impact_y = np.array([])
             other_impact_x = np.array([])
diff --git a/rocketpy/plots/rocket_plots.py b/rocketpy/plots/rocket_plots.py
index e208c775f..8e2b35558 100644
--- a/rocketpy/plots/rocket_plots.py
+++ b/rocketpy/plots/rocket_plots.py
@@ -1,8 +1,9 @@
 import matplotlib.pyplot as plt
 import numpy as np
 
-from rocketpy.motors import EmptyMotor, HybridMotor, LiquidMotor, SolidMotor
-from rocketpy.rocket.aero_surface import Fins, NoseCone, Tail
+from rocketpy.mathutils.vector_matrix import Vector
+from rocketpy.motors import HybridMotor, LiquidMotor, SolidMotor
+from rocketpy.rocket.aero_surface import Fin, Fins, NoseCone, Tail
 from rocketpy.rocket.aero_surface.generic_surface import GenericSurface
 
 from .plot_helpers import show_or_save_plot
@@ -183,7 +184,7 @@ def draw(self, vis_args=None, plane="xz", *, filename=None):
             and webp (these are the formats supported by matplotlib).
         """
 
-        self.__validate_aerodynamic_surfaces()
+        self.__validate_aerodynamic_surfaces(plane)
 
         if vis_args is None:
             vis_args = {
@@ -203,9 +204,9 @@ def draw(self, vis_args=None, plane="xz", *, filename=None):
 
         csys = self.rocket._csys
         reverse = csys == 1
-        self.rocket.aerodynamic_surfaces.sort_by_position(reverse=reverse)
+        surfaces = self.rocket.aerodynamic_surfaces.sort_by_position(reverse=reverse)
 
-        drawn_surfaces = self._draw_aerodynamic_surfaces(ax, vis_args, plane)
+        drawn_surfaces = self._draw_aerodynamic_surfaces(ax, vis_args, plane, surfaces)
         last_radius, last_x = self._draw_tubes(ax, drawn_surfaces, vis_args)
         self._draw_motor(last_radius, last_x, ax, vis_args)
         self._draw_rail_buttons(ax, vis_args)
@@ -221,13 +222,15 @@ def draw(self, vis_args=None, plane="xz", *, filename=None):
         plt.tight_layout()
         show_or_save_plot(filename)
 
-    def __validate_aerodynamic_surfaces(self):
+    def __validate_aerodynamic_surfaces(self, plane):
         if not self.rocket.aerodynamic_surfaces:
             raise ValueError(
                 "The rocket must have at least one aerodynamic surface to be drawn."
             )
+        if plane not in ("xz", "yz"):
+            raise ValueError("The plane must be 'xz' or 'yz'. The default is 'xz'.")
 
-    def _draw_aerodynamic_surfaces(self, ax, vis_args, plane):
+    def _draw_aerodynamic_surfaces(self, ax, vis_args, plane, surfaces):
         """Draws the aerodynamic surfaces and saves the position of the points
         of interest for the tubes."""
         # List of drawn surfaces with the position of points of interest
@@ -240,13 +243,17 @@ def _draw_aerodynamic_surfaces(self, ax, vis_args, plane):
         # diameter changes. The final point of the last surface is the final
         # point of the last tube
 
-        for surface, position in self.rocket.aerodynamic_surfaces:
+        for surface, position in surfaces:
             if isinstance(surface, NoseCone):
                 self._draw_nose_cone(ax, surface, position.z, drawn_surfaces, vis_args)
             elif isinstance(surface, Tail):
                 self._draw_tail(ax, surface, position.z, drawn_surfaces, vis_args)
             elif isinstance(surface, Fins):
-                self._draw_fins(ax, surface, position.z, drawn_surfaces, vis_args)
+                self._draw_fins(
+                    ax, surface, position.z, drawn_surfaces, vis_args, plane
+                )
+            elif isinstance(surface, Fin):
+                self._draw_fin(ax, surface, position, drawn_surfaces, vis_args, plane)
             elif isinstance(surface, GenericSurface):
                 self._draw_generic_surface(
                     ax, surface, position, drawn_surfaces, vis_args, plane
@@ -309,13 +316,15 @@ def _draw_tail(self, ax, surface, position, drawn_surfaces, vis_args):
         # Add the tail to the list of drawn surfaces
         drawn_surfaces.append((surface, position, surface.bottom_radius, x_tail[-1]))
 
-    def _draw_fins(self, ax, surface, position, drawn_surfaces, vis_args):
+    def _draw_fins(self, ax, surface, position, drawn_surfaces, vis_args, plane):
         """Draws the fins and saves the position of the points of interest
         for the tubes."""
         num_fins = surface.n
         x_fin = -self.rocket._csys * surface.shape_vec[0] + position
         y_fin = surface.shape_vec[1] + surface.rocket_radius
-        rotation_angles = [2 * np.pi * i / num_fins for i in range(num_fins)]
+        rotation_angles = np.array([2 * np.pi * i / num_fins for i in range(num_fins)])
+        if plane == "xz":
+            rotation_angles -= np.pi / 2
 
         for angle in rotation_angles:
             # Create a rotation matrix for the current angle around the x-axis
@@ -327,13 +336,6 @@ def _draw_fins(self, ax, surface, position, drawn_surfaces, vis_args):
             # Extract x and y coordinates of the rotated points
             x_rotated, y_rotated = rotated_points_2d
 
-            # Project points above the XY plane back into the XY plane (set z-coordinate to 0)
-            x_rotated = np.where(
-                rotated_points_2d[1] > 0, rotated_points_2d[0], x_rotated
-            )
-            y_rotated = np.where(
-                rotated_points_2d[1] > 0, rotated_points_2d[1], y_rotated
-            )
             ax.plot(
                 x_rotated,
                 y_rotated,
@@ -343,6 +345,56 @@ def _draw_fins(self, ax, surface, position, drawn_surfaces, vis_args):
 
         drawn_surfaces.append((surface, position, surface.rocket_radius, x_rotated[-1]))
 
+    def _draw_fin(self, ax, surface, position, drawn_surfaces, vis_args, plane):
+        """Draws individual fins."""
+
+        # Get shape vec
+        xs = surface.shape_vec[0]
+        ys = surface.shape_vec[1]
+        zs = np.zeros_like(xs)
+
+        # Define shape in fin coordinate system
+        x_fin = -zs
+        y_fin = ys
+        z_fin = xs
+        points = np.column_stack((x_fin, y_fin, z_fin))
+
+        # Move drawing coordinates to center of fin for cant angle rotation
+        xd = np.array([0, 0, max(xs) / 2])
+        points -= xd
+
+        # Rotate to body coordinate system
+        for i, p in enumerate(points):
+            points[i] = surface._rotation_fin_to_body @ Vector(p)
+
+        rotated_xd = surface._rotation_fin_to_body @ Vector(xd)
+        points += np.array(rotated_xd)
+
+        # Back to the drawing system
+        x_fin_rotated = points[:, 0]
+        y_fin_rotated = points[:, 1]
+        z_fin_rotated = points[:, 2]
+
+        if plane == "xz":
+            x_rotated = self.rocket._csys * z_fin_rotated + position.z
+            y_rotated = x_fin_rotated + position.x
+        elif plane == "yz":
+            x_rotated = self.rocket._csys * z_fin_rotated + position.z
+            y_rotated = y_fin_rotated + position.y
+        else:  # pragma: no cover
+            raise ValueError("Plane must be 'xz' or 'yz'.")
+
+        ax.plot(
+            x_rotated,
+            y_rotated,
+            color=vis_args["fins"],
+            linewidth=vis_args["line_width"],
+        )
+
+        drawn_surfaces.append(
+            (surface, position.z, surface.rocket_radius, x_rotated[-1])
+        )
+
     def _draw_generic_surface(
         self,
         ax,
@@ -420,57 +472,82 @@ def _draw_tubes(self, ax, drawn_surfaces, vis_args):
     def _draw_motor(self, last_radius, last_x, ax, vis_args):
         """Draws the motor from motor patches"""
         total_csys = self.rocket._csys * self.rocket.motor._csys
+        is_cluster = hasattr(self.rocket.motor, "number")
+        base_motor = self.rocket.motor.motor if is_cluster else self.rocket.motor
+
+        if is_cluster:
+            angles = np.linspace(0, 2 * np.pi, self.rocket.motor.number, endpoint=False)
+            y_offsets = self.rocket.motor.radius * np.cos(angles)
+        else:
+            y_offsets = [0]
         nozzle_position = (
-            self.rocket.motor_position + self.rocket.motor.nozzle_position * total_csys
+            self.rocket.motor_position + base_motor.nozzle_position * total_csys
         )
-
         # Get motor patches translated to the correct position
         motor_patches = self._generate_motor_patches(total_csys, ax)
-
         # Draw patches
-        if not isinstance(self.rocket.motor, EmptyMotor):
-            # Add nozzle last so it is in front of the other patches
-            nozzle = self.rocket.motor.plots._generate_nozzle(
-                translate=(nozzle_position, 0), csys=self.rocket._csys
-            )
-            motor_patches += [nozzle]
+        if type(self.rocket.motor).__name__ != "EmptyMotor":
+            for y_off in y_offsets:
+                nozzle = base_motor.plots._generate_nozzle(
+                    translate=(nozzle_position, y_off), csys=self.rocket._csys
+                )
+                if y_off != y_offsets[0]:
+                    nozzle.set_label("_nolegend_")
+                motor_patches.append(nozzle)
 
-            outline = self.rocket.motor.plots._generate_motor_region(
+            outline = base_motor.plots._generate_motor_region(
                 list_of_patches=motor_patches
             )
-            # add outline first so it is behind the other patches
-            ax.add_patch(outline)
+            if not is_cluster:
+                ax.add_patch(outline)
+
             for patch in motor_patches:
+                if is_cluster:
+                    patch.set_alpha(0.6)
                 ax.add_patch(patch)
-
         self._draw_nozzle_tube(last_radius, last_x, nozzle_position, ax, vis_args)
 
-    def _generate_motor_patches(self, total_csys, ax):  # pylint: disable=unused-argument
+    def _generate_motor_patches(self, total_csys, ax):
         """Generates motor patches for drawing"""
         motor_patches = []
 
-        if isinstance(self.rocket.motor, SolidMotor):
+        is_cluster = hasattr(self.rocket.motor, "number")
+        base_motor = self.rocket.motor.motor if is_cluster else self.rocket.motor
+
+        if isinstance(base_motor, SolidMotor):
+            y_offsets = (
+                self.rocket.motor.radius
+                * np.cos(
+                    np.linspace(0, 2 * np.pi, self.rocket.motor.number, endpoint=False)
+                )
+                if is_cluster
+                else [0]
+            )
             grains_cm_position = (
                 self.rocket.motor_position
-                + self.rocket.motor.grains_center_of_mass_position * total_csys
-            )
-            ax.scatter(
-                grains_cm_position,
-                0,
-                color="brown",
-                label="Grains Center of Mass",
-                s=8,
-                zorder=10,
+                + base_motor.grains_center_of_mass_position * total_csys
             )
+            for y_off in y_offsets:
+                ax.scatter(
+                    grains_cm_position,
+                    y_off,
+                    color="brown",
+                    label="Grains Center of Mass" if y_off == y_offsets[0] else "",
+                    s=8,
+                    zorder=10,
+                )
 
-            chamber = self.rocket.motor.plots._generate_combustion_chamber(
-                translate=(grains_cm_position, 0), label=None
-            )
-            grains = self.rocket.motor.plots._generate_grains(
-                translate=(grains_cm_position, 0)
-            )
+                chamber = base_motor.plots._generate_combustion_chamber(
+                    translate=(grains_cm_position, y_off), label=None
+                )
+                grains = base_motor.plots._generate_grains(
+                    translate=(grains_cm_position, y_off)
+                )
+                if y_off != y_offsets[0]:
+                    for grain in grains:
+                        grain.set_label("_nolegend_")
 
-            motor_patches += [chamber, *grains]
+                motor_patches += [chamber, *grains]
 
         elif isinstance(self.rocket.motor, HybridMotor):
             grains_cm_position = (
@@ -654,7 +731,7 @@ def all(self):
 
         # Rocket draw
         if len(self.rocket.aerodynamic_surfaces) > 0:
-            print("\nRocket Draw")
+            print("\nRocket Drawing")
             print("-" * 40)
             self.draw()
 
diff --git a/rocketpy/prints/aero_surface_prints.py b/rocketpy/prints/aero_surface_prints.py
index 4eb42b08d..cc36f1b01 100644
--- a/rocketpy/prints/aero_surface_prints.py
+++ b/rocketpy/prints/aero_surface_prints.py
@@ -1,6 +1,7 @@
 from abc import ABC, abstractmethod
 
 
+# TODO: the rocketpy/prints/aero_surface_prints.py file could be separated into different, smaller files.
 class _AeroSurfacePrints(ABC):
     def __init__(self, aero_surface):
         self.aero_surface = aero_surface
@@ -77,10 +78,8 @@ def geometry(self):
         print("-------------------------------------")
         print(f"Number of fins: {self.aero_surface.n}")
         print(f"Reference rocket radius: {self.aero_surface.rocket_radius:.3f} m")
-        try:
+        if hasattr(self.aero_surface, "tip_chord"):
             print(f"Tip chord: {self.aero_surface.tip_chord:.3f} m")
-        except AttributeError:
-            pass  # it isn't a trapezoidal fin, just don't worry about tip chord
         print(f"Root chord: {self.aero_surface.root_chord:.3f} m")
         print(f"Span: {self.aero_surface.span:.3f} m")
         print(
@@ -156,9 +155,102 @@ def lift(self):
             "Lift Coefficient derivative (single fin) at Mach 0 and AoA 0: "
             f"{self.aero_surface.clalpha_single_fin(0):.3f}"
         )
+
+    def all(self):
+        """Prints all information of the fin set.
+
+        Returns
+        -------
+        None
+        """
+        self.identity()
+        self.geometry()
+        self.airfoil()
+        self.roll()
+        self.lift()
+
+
+class _FinPrints(_AeroSurfacePrints):
+    def geometry(self):
+        print("Geometric information of the fin set:")
+        print("-------------------------------------")
+        print(f"Reference rocket radius: {self.aero_surface.rocket_radius:.3f} m")
+        if hasattr(self.aero_surface, "tip_chord"):
+            print(f"Tip chord: {self.aero_surface.tip_chord:.3f} m")
+        print(f"Root chord: {self.aero_surface.root_chord:.3f} m")
+        print(f"Span: {self.aero_surface.span:.3f} m")
+        print(
+            f"Cant angle: {self.aero_surface.cant_angle:.3f} ° or "
+            f"{self.aero_surface.cant_angle_rad:.3f} rad"
+        )
+        print(f"Longitudinal section area: {self.aero_surface.Af:.3f} m²")
+        print(f"Aspect ratio: {self.aero_surface.AR:.3f} ")
+        print(f"Gamma_c: {self.aero_surface.gamma_c:.3f} m")
+        print(f"Mean aerodynamic chord: {self.aero_surface.Yma:.3f} m\n")
+
+    def airfoil(self):
+        """Prints out airfoil related information of the fin set.
+
+        Returns
+        -------
+        None
+        """
+        if self.aero_surface.airfoil:
+            print("Airfoil information:")
+            print("--------------------")
+            print(
+                "Number of points defining the lift curve: "
+                f"{len(self.aero_surface.airfoil_cl.x_array)}"
+            )
+            print(
+                "Lift coefficient derivative at Mach 0 and AoA 0: "
+                f"{self.aero_surface.clalpha(0):.5f} 1/rad\n"
+            )
+
+    def roll(self):
+        """Prints out information about roll parameters
+        of the fin set.
+
+        Returns
+        -------
+        None
+        """
+        print("Roll information of the fin set:")
+        print("--------------------------------")
+        print(
+            f"Geometric constant: {self.aero_surface.roll_geometrical_constant:.3f} m"
+        )
+        print(
+            "Damping interference factor: "
+            f"{self.aero_surface.roll_damping_interference_factor:.3f} rad"
+        )
+        print(
+            "Forcing interference factor: "
+            f"{self.aero_surface.roll_forcing_interference_factor:.3f} rad\n"
+        )
+
+    def lift(self):
+        """Prints out information about lift parameters
+        of the fin set.
+
+        Returns
+        -------
+        None
+        """
+        print("Lift information of the fin set:")
+        print("--------------------------------")
         print(
-            "Lift Coefficient derivative (fin set) at Mach 0 and AoA 0: "
-            f"{self.aero_surface.clalpha_multiple_fins(0):.3f}"
+            "Lift interference factor: "
+            f"{self.aero_surface.lift_interference_factor:.3f} m"
+        )
+        print(
+            "Center of Pressure position in local coordinates: "
+            f"({self.aero_surface.cpx:.3f}, {self.aero_surface.cpy:.3f}, "
+            f"{self.aero_surface.cpz:.3f})"
+        )
+        print(
+            "Lift Coefficient derivative (single fin) at Mach 0 and AoA 0: "
+            f"{self.aero_surface.clalpha_single_fin(0):.3f}"
         )
 
     def all(self):
@@ -179,14 +271,26 @@ class _TrapezoidalFinsPrints(_FinsPrints):
     """Class that contains all trapezoidal fins prints."""
 
 
+class _TrapezoidalFinPrints(_FinPrints):
+    """Class that contains all trapezoidal fin prints."""
+
+
 class _EllipticalFinsPrints(_FinsPrints):
     """Class that contains all elliptical fins prints."""
 
 
+class _EllipticalFinPrints(_FinPrints):
+    """Class that contains all elliptical fin prints."""
+
+
 class _FreeFormFinsPrints(_FinsPrints):
     """Class that contains all free form fins prints."""
 
 
+class _FreeFormFinPrints(_FinPrints):
+    """Class that contains all free form fins prints."""
+
+
 class _TailPrints(_AeroSurfacePrints):
     """Class that contains all tail prints."""
 
diff --git a/rocketpy/prints/controller_prints.py b/rocketpy/prints/controller_prints.py
index cb19ec00c..e2690c36a 100644
--- a/rocketpy/prints/controller_prints.py
+++ b/rocketpy/prints/controller_prints.py
@@ -41,7 +41,10 @@ def controller_function(self):
             print(
                 "Controller function: " + self.controller.controller_function.__name__
             )
-        print(f"Controller refresh rate: {self.controller.sampling_rate:.3f} Hz")
+        if self.controller.is_continuous:
+            print("Controller refresh rate: continuous (every solver step)")
+        else:
+            print(f"Controller refresh rate: {self.controller.sampling_rate:.3f} Hz")
 
     def interactive_objects(self):
         """Prints interactive objects."""
diff --git a/rocketpy/rocket/__init__.py b/rocketpy/rocket/__init__.py
index 463cbe3b3..6c45a6d1c 100644
--- a/rocketpy/rocket/__init__.py
+++ b/rocketpy/rocket/__init__.py
@@ -2,17 +2,21 @@
 from rocketpy.rocket.aero_surface import (
     AeroSurface,
     AirBrakes,
+    EllipticalFin,
     EllipticalFins,
+    Fin,
     Fins,
+    FreeFormFin,
     FreeFormFins,
     GenericSurface,
     LinearGenericSurface,
     NoseCone,
     RailButtons,
     Tail,
+    TrapezoidalFin,
     TrapezoidalFins,
 )
 from rocketpy.rocket.components import Components
-from rocketpy.rocket.parachute import Parachute
+from rocketpy.rocket.parachutes import HemisphericalParachute, Parachute
 from rocketpy.rocket.point_mass_rocket import PointMassRocket
 from rocketpy.rocket.rocket import Rocket
diff --git a/rocketpy/rocket/aero_surface/__init__.py b/rocketpy/rocket/aero_surface/__init__.py
index ad784f8d0..7634d3500 100644
--- a/rocketpy/rocket/aero_surface/__init__.py
+++ b/rocketpy/rocket/aero_surface/__init__.py
@@ -1,9 +1,13 @@
 from rocketpy.rocket.aero_surface.aero_surface import AeroSurface
 from rocketpy.rocket.aero_surface.air_brakes import AirBrakes
 from rocketpy.rocket.aero_surface.fins import (
+    EllipticalFin,
     EllipticalFins,
+    Fin,
     Fins,
+    FreeFormFin,
     FreeFormFins,
+    TrapezoidalFin,
     TrapezoidalFins,
 )
 from rocketpy.rocket.aero_surface.generic_surface import GenericSurface
diff --git a/rocketpy/rocket/aero_surface/aero_surface.py b/rocketpy/rocket/aero_surface/aero_surface.py
index 15ca14f1d..6727476c6 100644
--- a/rocketpy/rocket/aero_surface/aero_surface.py
+++ b/rocketpy/rocket/aero_surface/aero_surface.py
@@ -2,6 +2,8 @@
 
 import numpy as np
 
+from rocketpy.mathutils.vector_matrix import Matrix
+
 
 class AeroSurface(ABC):
     """Abstract class used to define aerodynamic surfaces."""
@@ -15,6 +17,14 @@ def __init__(self, name, reference_area, reference_length):
         self.cpy = 0
         self.cpz = 0
 
+        self._rotation_surface_to_body = Matrix(
+            [
+                [-1, 0, 0],
+                [0, 1, 0],
+                [0, 0, -1],
+            ]
+        )
+
     @staticmethod
     def _beta(mach):
         """Defines a parameter that is often used in aerodynamic
@@ -130,7 +140,7 @@ def compute_forces_and_moments(
         R1, R2, R3, M1, M2, M3 = 0, 0, 0, 0, 0, 0
         cpz = cp[2]
         stream_vx, stream_vy, stream_vz = stream_velocity
-        if stream_vx**2 + stream_vy**2 != 0:  # TODO: maybe try/except
+        if stream_vx**2 + stream_vy**2 != 0:
             # Normalize component stream velocity in body frame
             stream_vzn = stream_vz / stream_speed
             if -1 * stream_vzn < 1:
diff --git a/rocketpy/rocket/aero_surface/fins/__init__.py b/rocketpy/rocket/aero_surface/fins/__init__.py
index 941aa5465..dd678c625 100644
--- a/rocketpy/rocket/aero_surface/fins/__init__.py
+++ b/rocketpy/rocket/aero_surface/fins/__init__.py
@@ -1,4 +1,8 @@
+from rocketpy.rocket.aero_surface.fins.elliptical_fin import EllipticalFin
 from rocketpy.rocket.aero_surface.fins.elliptical_fins import EllipticalFins
+from rocketpy.rocket.aero_surface.fins.fin import Fin
 from rocketpy.rocket.aero_surface.fins.fins import Fins
+from rocketpy.rocket.aero_surface.fins.free_form_fin import FreeFormFin
 from rocketpy.rocket.aero_surface.fins.free_form_fins import FreeFormFins
+from rocketpy.rocket.aero_surface.fins.trapezoidal_fin import TrapezoidalFin
 from rocketpy.rocket.aero_surface.fins.trapezoidal_fins import TrapezoidalFins
diff --git a/rocketpy/rocket/aero_surface/fins/_base_fin.py b/rocketpy/rocket/aero_surface/fins/_base_fin.py
new file mode 100644
index 000000000..f6b09f797
--- /dev/null
+++ b/rocketpy/rocket/aero_surface/fins/_base_fin.py
@@ -0,0 +1,344 @@
+import math
+from abc import abstractmethod
+
+import numpy as np
+
+from rocketpy.mathutils.function import Function
+
+from ..aero_surface import AeroSurface
+
+
+class _BaseFin(AeroSurface):
+    """
+    Base class for fins, shared by both Fin and Fins classes.
+    Inherits from AeroSurface.
+
+    Handles shared initialization logic and common properties.
+    """
+
+    def __init__(
+        self, name, rocket_radius, root_chord, span, airfoil=None, cant_angle=0
+    ):
+        """
+        Initialize the base fin class.
+
+        Parameters
+        ----------
+        name : str
+            Name of the fin or fin set.
+        rocket_radius : float
+            Rocket radius in meters.
+        root_chord : float
+            Root chord of the fin in meters.
+        span : float
+            Span of the fin in meters.
+        airfoil : tuple, optional
+            Tuple containing airfoil data and unit ('degrees' or 'radians').
+        cant_angle : float, optional
+            Cant angle in degrees.
+        """
+        self.name = name
+        self._rocket_radius = rocket_radius
+        self._root_chord = root_chord
+        self._span = span
+        self._airfoil = airfoil
+        self._cant_angle = cant_angle
+        self._cant_angle_rad = math.radians(cant_angle)
+        self.geometry = None
+
+        self.reference_area = np.pi * rocket_radius**2
+
+        super().__init__(name, self.reference_area, self.rocket_diameter)
+
+    def _update_reference_quantities(self):
+        """Update quantities that depend on rocket radius."""
+        self.reference_area = np.pi * self._rocket_radius**2
+        self.reference_length = self.rocket_diameter
+
+    def _update_geometry_chain(self):
+        """Update geometry-dependent quantities in dependency order."""
+        self.evaluate_geometrical_parameters()
+        self.evaluate_center_of_pressure()
+        self.evaluate_lift_coefficient()
+        self.evaluate_roll_parameters()
+
+    @property
+    def rocket_radius(self):
+        """Rocket radius in meters.
+
+        Returns
+        -------
+        float
+            Rocket radius in meters.
+        """
+        return self._rocket_radius
+
+    @rocket_radius.setter
+    def rocket_radius(self, value):
+        """Set rocket radius and update dependent properties.
+
+        Parameters
+        ----------
+        value : float
+            Rocket radius in meters.
+        """
+        self._rocket_radius = value
+        self._update_reference_quantities()
+        self._update_geometry_chain()
+
+    @property
+    def rocket_diameter(self):
+        """Reference rocket diameter in meters."""
+        return 2 * self._rocket_radius
+
+    @rocket_diameter.setter
+    def rocket_diameter(self, value):
+        """Set reference rocket diameter in meters."""
+        self.rocket_radius = value / 2
+
+    @property
+    def diameter(self):
+        """Backward-compatible alias for :attr:`rocket_diameter`."""
+        return self.rocket_diameter
+
+    @diameter.setter
+    def diameter(self, value):
+        """Backward-compatible alias setter for :attr:`rocket_diameter`."""
+        self.rocket_diameter = value
+
+    @property
+    def d(self):
+        """Backward-compatible alias for :attr:`rocket_diameter`."""
+        return self.rocket_diameter
+
+    @d.setter
+    def d(self, value):
+        """Backward-compatible alias setter for :attr:`rocket_diameter`."""
+        self.rocket_diameter = value
+
+    @property
+    def ref_area(self):
+        """Backward-compatible alias for :attr:`reference_area`."""
+        return self.reference_area
+
+    @ref_area.setter
+    def ref_area(self, value):
+        """Backward-compatible alias setter for :attr:`reference_area`."""
+        self.reference_area = value
+
+    @property
+    def root_chord(self):
+        """Root chord length in meters.
+
+        Returns
+        -------
+        float
+            Root chord length in meters.
+        """
+        return self._root_chord
+
+    @root_chord.setter
+    def root_chord(self, value):
+        """Set root chord and update dependent properties.
+
+        Parameters
+        ----------
+        value : float
+            Root chord length in meters.
+        """
+        self._root_chord = value
+        self._update_geometry_chain()
+        self.evaluate_shape()
+
+    @property
+    def span(self):
+        """Fin span in meters.
+
+        Returns
+        -------
+        float
+            Fin span in meters.
+        """
+        return self._span
+
+    @span.setter
+    def span(self, value):
+        """Set fin span and update dependent properties.
+
+        Parameters
+        ----------
+        value : float
+            Fin span in meters.
+        """
+        self._span = value
+        self._update_geometry_chain()
+        self.evaluate_shape()
+
+    @property
+    def cant_angle(self):
+        """Cant angle in degrees.
+
+        Returns
+        -------
+        float
+            Cant angle in degrees.
+        """
+        return self._cant_angle
+
+    @cant_angle.setter
+    def cant_angle(self, value):
+        """Set cant angle and update radian representation.
+
+        Parameters
+        ----------
+        value : float
+            Cant angle in degrees.
+        """
+        self._cant_angle = value
+        self.cant_angle_rad = math.radians(value)
+
+    @property
+    def cant_angle_rad(self):
+        """Cant angle in radians.
+
+        Returns
+        -------
+        float
+            Cant angle in radians.
+        """
+        return self._cant_angle_rad
+
+    @cant_angle_rad.setter
+    def cant_angle_rad(self, value):
+        """Set cant angle in radians and update dependent properties.
+
+        Parameters
+        ----------
+        value : float
+            Cant angle in radians.
+        """
+        self._cant_angle_rad = value
+        self._update_geometry_chain()
+
+    @property
+    def airfoil(self):
+        """Airfoil data for the fin.
+
+        Returns
+        -------
+        tuple or None
+            Tuple containing airfoil data and unit ('degrees' or 'radians'),
+            or None if using planar fin.
+        """
+        return self._airfoil
+
+    @airfoil.setter
+    def airfoil(self, value):
+        """Set airfoil data and update dependent properties.
+
+        Parameters
+        ----------
+        value : tuple or None
+            Tuple containing airfoil data and unit ('degrees' or 'radians'),
+            or None for planar fin.
+        """
+        self._airfoil = value
+        self._update_geometry_chain()
+
+    def info(self):
+        """Print fin geometry and lift information."""
+        self.prints.geometry()
+        self.prints.lift()
+
+    def all_info(self):
+        """Print all available fin information and show all fin plots."""
+        self.prints.all()
+        self.plots.all()
+
+    def evaluate_single_fin_lift_coefficient(self):
+        """Evaluate the lift coefficient derivative for a single fin.
+
+        Computes the lift coefficient derivative (clalpha) considering the
+        fin's geometry, airfoil characteristics (if provided), and Mach number
+        effects using Prandtl-Glauert compressibility correction and
+        Diederich's planform correlation.
+
+        Sets the `clalpha_single_fin` attribute as a Function of Mach number.
+        """
+        if not self.airfoil:
+            # Defines clalpha2D as 2*pi for planar fins
+            clalpha2D_incompressible = 2 * np.pi
+        else:
+            # Defines clalpha2D as the derivative of the lift coefficient curve
+            # for the specific airfoil
+            self.airfoil_cl = Function(
+                self.airfoil[0],
+                title="Airfoil lift coefficient",
+                interpolation="linear",
+            )
+
+            # Differentiating at alpha = 0 to get cl_alpha
+            clalpha2D_incompressible = self.airfoil_cl.differentiate(x=1e-3, dx=1e-3)
+
+            # Convert to radians if needed
+            if self.airfoil[1] == "degrees":
+                clalpha2D_incompressible *= 180 / np.pi
+
+        # Correcting for compressible flow (apply Prandtl-Glauert correction)
+        clalpha2D = Function(lambda mach: clalpha2D_incompressible / self._beta(mach))
+
+        # Diederich's Planform Correlation Parameter
+        planform_correlation_parameter = (
+            2 * np.pi * self.AR / (clalpha2D * np.cos(self.gamma_c))
+        )
+
+        # Lift coefficient derivative for a single fin
+        def lift_source(mach):
+            return (
+                clalpha2D(mach)
+                * planform_correlation_parameter(mach)
+                * (self.Af / self.reference_area)
+                * np.cos(self.gamma_c)
+            ) / (
+                2
+                + planform_correlation_parameter(mach)
+                * np.sqrt(1 + (2 / planform_correlation_parameter(mach)) ** 2)
+            )
+
+        self.clalpha_single_fin = Function(
+            lift_source,
+            "Mach",
+            "Lift coefficient derivative for a single fin",
+        )
+
+    @abstractmethod
+    def evaluate_lift_coefficient(self):
+        """Evaluate the lift coefficient for the fin."""
+
+    @abstractmethod
+    def evaluate_roll_parameters(self):
+        """Evaluate roll-related parameters for the fin."""
+
+    @abstractmethod
+    def evaluate_center_of_pressure(self):
+        """Evaluate the center of pressure for the fin."""
+
+    def evaluate_geometrical_parameters(self):
+        """Evaluate geometric parameters of the fin.
+
+        This method delegates to the configured geometry strategy.
+        """
+        geometry_data = self.geometry.evaluate_geometrical_parameters()
+        for key, value in geometry_data.items():
+            setattr(self, key, value)
+
+    def evaluate_shape(self):
+        """Evaluate the shape representation of the fin.
+
+        This method delegates to the configured geometry strategy.
+        """
+        self.shape_vec = self.geometry.evaluate_shape()
+
+    @abstractmethod
+    def draw(self):
+        """Draw or render the fin."""
diff --git a/rocketpy/rocket/aero_surface/fins/_geometry.py b/rocketpy/rocket/aero_surface/fins/_geometry.py
new file mode 100644
index 000000000..71b213909
--- /dev/null
+++ b/rocketpy/rocket/aero_surface/fins/_geometry.py
@@ -0,0 +1,564 @@
+"""Geometry strategy classes for fin aerodynamic surfaces."""
+
+import warnings
+from abc import ABC, abstractmethod
+
+import numpy as np
+
+
+class _FinGeometry(ABC):
+    """Base geometry strategy for fin shapes."""
+
+    def __init__(self, owner):
+        self.owner = owner
+
+    @abstractmethod
+    def evaluate_geometrical_parameters(self):
+        """Evaluate and return geometry-dependent aerodynamic parameters."""
+
+    @abstractmethod
+    def evaluate_shape(self):
+        """Evaluate and return the shape vector used by plotting and outputs."""
+
+    def get_data(self, include_outputs=False):
+        """Return geometry-specific serialization data."""
+        _ = include_outputs
+        return {}
+
+
+class _TrapezoidalGeometry(_FinGeometry):
+    """Geometry strategy for trapezoidal fins."""
+
+    def __init__(
+        self,
+        owner,
+        tip_chord,
+        sweep_length=None,
+        sweep_angle=None,
+    ):
+        super().__init__(owner)
+        if sweep_length is not None and sweep_angle is not None:
+            raise ValueError("Cannot use sweep_length and sweep_angle together")
+
+        if sweep_angle is not None:
+            sweep_length = np.tan(np.radians(sweep_angle)) * owner.span
+        elif sweep_length is None:
+            sweep_length = owner.root_chord - tip_chord
+
+        self._tip_chord = tip_chord
+        self._sweep_length = sweep_length
+        self._sweep_angle = sweep_angle
+
+    @property
+    def tip_chord(self):
+        return self._tip_chord
+
+    @tip_chord.setter
+    def tip_chord(self, value):
+        self._tip_chord = value
+
+    @property
+    def sweep_length(self):
+        return self._sweep_length
+
+    @sweep_length.setter
+    def sweep_length(self, value):
+        self._sweep_length = value
+
+    @property
+    def sweep_angle(self):
+        return self._sweep_angle
+
+    @sweep_angle.setter
+    def sweep_angle(self, value):
+        self._sweep_angle = value
+        self._sweep_length = np.tan(np.radians(value)) * self.owner.span
+
+    def evaluate_geometrical_parameters(self):
+        """Calculate trapezoidal fin geometric parameters."""
+        # pylint: disable=invalid-name
+        owner = self.owner
+        Yr = owner.root_chord + self.tip_chord
+        Af = Yr * owner.span / 2
+        AR = 2 * owner.span**2 / Af
+        gamma_c = np.arctan(
+            (self.sweep_length + 0.5 * self.tip_chord - 0.5 * owner.root_chord)
+            / owner.span
+        )
+        Yma = (owner.span / 3) * (owner.root_chord + 2 * self.tip_chord) / Yr
+
+        tau = (owner.span + owner.rocket_radius) / owner.rocket_radius
+        lift_interference_factor = 1 + 1 / tau
+        lambda_ = self.tip_chord / owner.root_chord
+
+        roll_geometrical_constant = (
+            (owner.root_chord + 3 * self.tip_chord) * owner.span**3
+            + 4
+            * (owner.root_chord + 2 * self.tip_chord)
+            * owner.rocket_radius
+            * owner.span**2
+            + 6
+            * (owner.root_chord + self.tip_chord)
+            * owner.span
+            * owner.rocket_radius**2
+        ) / 12
+        roll_damping_interference_factor = 1 + (
+            ((tau - lambda_) / tau) - ((1 - lambda_) / (tau - 1)) * np.log(tau)
+        ) / (
+            ((tau + 1) * (tau - lambda_)) / 2
+            - ((1 - lambda_) * (tau**3 - 1)) / (3 * (tau - 1))
+        )
+        roll_forcing_interference_factor = (1 / np.pi**2) * (
+            (np.pi**2 / 4) * ((tau + 1) ** 2 / tau**2)
+            + (np.pi * (tau**2 + 1) ** 2 / (tau**2 * (tau - 1) ** 2))
+            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
+            - (2 * np.pi * (tau + 1)) / (tau * (tau - 1))
+            + ((tau**2 + 1) ** 2 / (tau**2 * (tau - 1) ** 2))
+            * (np.arcsin((tau**2 - 1) / (tau**2 + 1))) ** 2
+            - (4 * (tau + 1))
+            / (tau * (tau - 1))
+            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
+            + (8 / (tau - 1) ** 2) * np.log((tau**2 + 1) / (2 * tau))
+        )
+
+        self.Yr = Yr
+        self.Af = Af
+        self.AR = AR
+        self.gamma_c = gamma_c
+        self.Yma = Yma
+        self.roll_geometrical_constant = roll_geometrical_constant
+        self.tau = tau
+        self.lift_interference_factor = lift_interference_factor
+        self.λ = lambda_  # pylint: disable=non-ascii-name
+        self.roll_damping_interference_factor = roll_damping_interference_factor
+        self.roll_forcing_interference_factor = roll_forcing_interference_factor
+
+        return {
+            "Yr": Yr,
+            "Af": Af,
+            "AR": AR,
+            "gamma_c": gamma_c,
+            "Yma": Yma,
+            "roll_geometrical_constant": roll_geometrical_constant,
+            "tau": tau,
+            "lift_interference_factor": lift_interference_factor,
+            "λ": lambda_,  # pylint: disable=non-ascii-name
+            "roll_damping_interference_factor": roll_damping_interference_factor,
+            "roll_forcing_interference_factor": roll_forcing_interference_factor,
+        }
+
+    def evaluate_shape(self):
+        owner = self.owner
+        if self.sweep_length:
+            points = [
+                (0, 0),
+                (self.sweep_length, owner.span),
+                (self.sweep_length + self.tip_chord, owner.span),
+                (owner.root_chord, 0),
+            ]
+        else:
+            points = [
+                (0, 0),
+                (owner.root_chord - self.tip_chord, owner.span),
+                (owner.root_chord, owner.span),
+                (owner.root_chord, 0),
+            ]
+
+        x_array, y_array = zip(*points)
+        shape_vec = [np.array(x_array), np.array(y_array)]
+        self.shape_vec = shape_vec
+        return shape_vec
+
+    def get_data(self, include_outputs=False):
+        data = {
+            "tip_chord": self.tip_chord,
+            "sweep_length": self.sweep_length,
+            "sweep_angle": self.sweep_angle,
+        }
+        if include_outputs:
+            data.update(
+                {
+                    "shape_vec": getattr(self, "shape_vec", None),
+                    "Af": getattr(self, "Af", None),
+                    "AR": getattr(self, "AR", None),
+                    "gamma_c": getattr(self, "gamma_c", None),
+                    "Yma": getattr(self, "Yma", None),
+                    "roll_geometrical_constant": getattr(
+                        self, "roll_geometrical_constant", None
+                    ),
+                    "tau": getattr(self, "tau", None),
+                    "lift_interference_factor": getattr(
+                        self, "lift_interference_factor", None
+                    ),
+                    "roll_damping_interference_factor": getattr(
+                        self, "roll_damping_interference_factor", None
+                    ),
+                    "roll_forcing_interference_factor": getattr(
+                        self, "roll_forcing_interference_factor", None
+                    ),
+                }
+            )
+        return data
+
+
+class _EllipticalGeometry(_FinGeometry):
+    """Geometry strategy for elliptical fins."""
+
+    def evaluate_geometrical_parameters(self):  # pylint: disable=too-many-statements
+        """Calculate elliptical fin geometric parameters."""
+        owner = self.owner
+
+        # pylint: disable=invalid-name
+        Af = (np.pi * owner.root_chord / 2 * owner.span) / 2
+        gamma_c = 0
+        AR = 2 * owner.span**2 / Af
+        Yma = owner.span / (3 * np.pi) * np.sqrt(9 * np.pi**2 - 64)
+        roll_geometrical_constant = (
+            owner.root_chord
+            * owner.span
+            * (
+                3 * np.pi * owner.span**2
+                + 32 * owner.rocket_radius * owner.span
+                + 12 * np.pi * owner.rocket_radius**2
+            )
+            / 48
+        )
+
+        tau = (owner.span + owner.rocket_radius) / owner.rocket_radius
+        lift_interference_factor = 1 + 1 / tau
+        if owner.span > owner.rocket_radius:
+            roll_damping_interference_factor = 1 + (
+                owner.rocket_radius**2
+                * (
+                    2
+                    * owner.rocket_radius**2
+                    * np.sqrt(owner.span**2 - owner.rocket_radius**2)
+                    * np.log(
+                        (
+                            2
+                            * owner.span
+                            * np.sqrt(owner.span**2 - owner.rocket_radius**2)
+                            + 2 * owner.span**2
+                        )
+                        / owner.rocket_radius
+                    )
+                    - 2
+                    * owner.rocket_radius**2
+                    * np.sqrt(owner.span**2 - owner.rocket_radius**2)
+                    * np.log(2 * owner.span)
+                    + 2 * owner.span**3
+                    - np.pi * owner.rocket_radius * owner.span**2
+                    - 2 * owner.rocket_radius**2 * owner.span
+                    + np.pi * owner.rocket_radius**3
+                )
+            ) / (
+                2
+                * owner.span**2
+                * (owner.span / 3 + np.pi * owner.rocket_radius / 4)
+                * (owner.span**2 - owner.rocket_radius**2)
+            )
+        elif owner.span < owner.rocket_radius:
+            roll_damping_interference_factor = 1 - (
+                owner.rocket_radius**2
+                * (
+                    2 * owner.span**3
+                    - np.pi * owner.span**2 * owner.rocket_radius
+                    - 2 * owner.span * owner.rocket_radius**2
+                    + np.pi * owner.rocket_radius**3
+                    + 2
+                    * owner.rocket_radius**2
+                    * np.sqrt(-(owner.span**2) + owner.rocket_radius**2)
+                    * np.arctan(
+                        owner.span / np.sqrt(-(owner.span**2) + owner.rocket_radius**2)
+                    )
+                    - np.pi
+                    * owner.rocket_radius**2
+                    * np.sqrt(-(owner.span**2) + owner.rocket_radius**2)
+                )
+            ) / (
+                2
+                * owner.span
+                * (-(owner.span**2) + owner.rocket_radius**2)
+                * (owner.span**2 / 3 + np.pi * owner.span * owner.rocket_radius / 4)
+            )
+        else:
+            roll_damping_interference_factor = (28 - 3 * np.pi) / (4 + 3 * np.pi)
+
+        roll_forcing_interference_factor = (1 / np.pi**2) * (
+            (np.pi**2 / 4) * ((tau + 1) ** 2 / tau**2)
+            + (np.pi * (tau**2 + 1) ** 2 / (tau**2 * (tau - 1) ** 2))
+            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
+            - (2 * np.pi * (tau + 1)) / (tau * (tau - 1))
+            + ((tau**2 + 1) ** 2 / (tau**2 * (tau - 1) ** 2))
+            * (np.arcsin((tau**2 - 1) / (tau**2 + 1))) ** 2
+            - (4 * (tau + 1))
+            / (tau * (tau - 1))
+            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
+            + (8 / (tau - 1) ** 2) * np.log((tau**2 + 1) / (2 * tau))
+        )
+
+        self.Af = Af
+        self.AR = AR
+        self.gamma_c = gamma_c
+        self.Yma = Yma
+        self.roll_geometrical_constant = roll_geometrical_constant
+        self.tau = tau
+        self.lift_interference_factor = lift_interference_factor
+        self.roll_damping_interference_factor = roll_damping_interference_factor
+        self.roll_forcing_interference_factor = roll_forcing_interference_factor
+
+        return {
+            "Af": Af,
+            "AR": AR,
+            "gamma_c": gamma_c,
+            "Yma": Yma,
+            "roll_geometrical_constant": roll_geometrical_constant,
+            "tau": tau,
+            "lift_interference_factor": lift_interference_factor,
+            "roll_damping_interference_factor": roll_damping_interference_factor,
+            "roll_forcing_interference_factor": roll_forcing_interference_factor,
+        }
+
+    def evaluate_shape(self):
+        owner = self.owner
+        angles = np.arange(0, 180, 5)
+        x_array = owner.root_chord / 2 + owner.root_chord / 2 * np.cos(
+            np.radians(angles)
+        )
+        y_array = owner.span * np.sin(np.radians(angles))
+        shape_vec = [x_array, y_array]
+        self.shape_vec = shape_vec
+        return shape_vec
+
+    def get_data(self, include_outputs=False):
+        if not include_outputs:
+            return {}
+        return {
+            "Af": getattr(self, "Af", None),
+            "AR": getattr(self, "AR", None),
+            "gamma_c": getattr(self, "gamma_c", None),
+            "Yma": getattr(self, "Yma", None),
+            "roll_geometrical_constant": getattr(
+                self, "roll_geometrical_constant", None
+            ),
+            "tau": getattr(self, "tau", None),
+            "lift_interference_factor": getattr(self, "lift_interference_factor", None),
+            "roll_damping_interference_factor": getattr(
+                self, "roll_damping_interference_factor", None
+            ),
+            "roll_forcing_interference_factor": getattr(
+                self, "roll_forcing_interference_factor", None
+            ),
+        }
+
+
+class _FreeFormGeometry(_FinGeometry):
+    """Geometry strategy for free-form fins."""
+
+    def __init__(self, owner, shape_points):
+        super().__init__(owner)
+        self.shape_points = shape_points
+
+    @staticmethod
+    def infer_dimensions(shape_points):
+        """Infer root chord and span from free-form points."""
+        down = False
+        for i in range(1, len(shape_points)):
+            if shape_points[i][1] > shape_points[i - 1][1] and down:
+                warnings.warn(
+                    "Jagged fin shape detected. This may cause small "
+                    "inaccuracies center of pressure and pitch moment "
+                    "calculations."
+                )
+                break
+            if shape_points[i][1] < shape_points[i - 1][1]:
+                down = True
+
+        root_chord = abs(shape_points[0][0] - shape_points[-1][0])
+        ys = [point[1] for point in shape_points]
+        span = max(ys) - min(ys)
+        return root_chord, span
+
+    def evaluate_geometrical_parameters(
+        self,
+    ):  # pylint: disable=too-many-statements,too-many-locals,invalid-name
+        """Calculate free-form fin geometric parameters."""
+        owner = self.owner
+
+        Af = 0
+        for i in range(len(self.shape_points) - 1):
+            x1, y1 = self.shape_points[i]
+            x2, y2 = self.shape_points[i + 1]
+            Af += (y1 + y2) * (x1 - x2)
+        Af = abs(Af) / 2
+        if Af < 1e-6:
+            raise ValueError("Fin area is too small. Check the shape_points.")
+
+        AR = 2 * owner.span**2 / Af
+        tau = (owner.span + owner.rocket_radius) / owner.rocket_radius
+        lift_interference_factor = 1 + 1 / tau
+
+        roll_forcing_interference_factor = (1 / np.pi**2) * (
+            (np.pi**2 / 4) * ((tau + 1) ** 2 / tau**2)
+            + (np.pi * (tau**2 + 1) ** 2 / (tau**2 * (tau - 1) ** 2))
+            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
+            - (2 * np.pi * (tau + 1)) / (tau * (tau - 1))
+            + ((tau**2 + 1) ** 2 / (tau**2 * (tau - 1) ** 2))
+            * (np.arcsin((tau**2 - 1) / (tau**2 + 1))) ** 2
+            - (4 * (tau + 1))
+            / (tau * (tau - 1))
+            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
+            + (8 / (tau - 1) ** 2) * np.log((tau**2 + 1) / (2 * tau))
+        )
+
+        points_per_line = 40
+        chord_lead = np.ones(points_per_line) * np.inf
+        chord_trail = np.ones(points_per_line) * -np.inf
+        chord_length = np.zeros(points_per_line)
+
+        for p in range(1, len(self.shape_points)):
+            x1, y1 = self.shape_points[p - 1]
+            x2, y2 = self.shape_points[p]
+
+            prev_idx = int(y1 / owner.span * (points_per_line - 1))
+            curr_idx = int(y2 / owner.span * (points_per_line - 1))
+            prev_idx = np.clip(prev_idx, 0, points_per_line - 1)
+            curr_idx = np.clip(curr_idx, 0, points_per_line - 1)
+
+            if prev_idx > curr_idx:
+                prev_idx, curr_idx = curr_idx, prev_idx
+
+            for i in range(prev_idx, curr_idx + 1):
+                y = i * owner.span / (points_per_line - 1)
+                if y1 != y2:
+                    x = np.clip(
+                        (y - y2) / (y1 - y2) * x1 + (y1 - y) / (y1 - y2) * x2,
+                        min(x1, x2),
+                        max(x1, x2),
+                    )
+                else:
+                    x = x1
+
+                chord_lead[i] = min(chord_lead[i], x)
+                chord_trail[i] = max(chord_trail[i], x)
+
+                if y1 < y2:
+                    chord_length[i] -= x
+                else:
+                    chord_length[i] += x
+
+        invalid_lead = np.isnan(chord_lead) | np.isinf(chord_lead)
+        invalid_trail = np.isnan(chord_trail) | np.isinf(chord_trail)
+        chord_lead[invalid_lead | invalid_trail] = 0
+        chord_trail[invalid_lead | invalid_trail] = 0
+
+        chord_length[chord_length < 0] = 0
+        chord_length[np.isnan(chord_length)] = 0
+        max_chord = chord_trail - chord_lead
+        chord_length = np.minimum(chord_length, max_chord)
+
+        radius = owner.rocket_radius
+        total_area = 0
+        mac_length = 0
+        mac_lead = 0
+        mac_span = 0
+        cos_gamma_sum = 0
+        roll_geometrical_constant = 0
+        roll_damping_numerator = 0
+        roll_damping_denominator = 0
+
+        dy = owner.span / (points_per_line - 1)
+        for i in range(points_per_line):
+            chord = chord_trail[i] - chord_lead[i]
+            y = i * dy
+
+            mac_length += chord * chord
+            mac_span += y * chord
+            mac_lead += chord_lead[i] * chord
+            total_area += chord
+            roll_geometrical_constant += chord_length[i] * (radius + y) ** 2
+            roll_damping_numerator += radius**3 * chord / (radius + y) ** 2
+            roll_damping_denominator += (radius + y) * chord
+
+            if i > 0:
+                dx = (chord_trail[i] + chord_lead[i]) / 2 - (
+                    chord_trail[i - 1] + chord_lead[i - 1]
+                ) / 2
+                cos_gamma_sum += dy / np.hypot(dx, dy)
+
+        mac_length *= dy
+        mac_span *= dy
+        mac_lead *= dy
+        total_area *= dy
+        roll_geometrical_constant *= dy
+        roll_damping_numerator *= dy
+        roll_damping_denominator *= dy
+
+        mac_length /= total_area
+        mac_span /= total_area
+        mac_lead /= total_area
+        cos_gamma = cos_gamma_sum / (points_per_line - 1)
+
+        gamma_c = np.arccos(cos_gamma)
+
+        self.Af = Af
+        self.AR = AR
+        self.gamma_c = gamma_c
+        self.Yma = mac_span
+        self.mac_length = mac_length
+        self.mac_lead = mac_lead
+        self.tau = tau
+        self.roll_geometrical_constant = roll_geometrical_constant
+        self.lift_interference_factor = lift_interference_factor
+        self.roll_forcing_interference_factor = roll_forcing_interference_factor
+        self.roll_damping_interference_factor = 1 + (
+            roll_damping_numerator / roll_damping_denominator
+        )
+
+        return {
+            "Af": Af,
+            "AR": AR,
+            "gamma_c": gamma_c,
+            "Yma": mac_span,
+            "mac_length": mac_length,
+            "mac_lead": mac_lead,
+            "tau": tau,
+            "roll_geometrical_constant": roll_geometrical_constant,
+            "lift_interference_factor": lift_interference_factor,
+            "roll_forcing_interference_factor": roll_forcing_interference_factor,
+            "roll_damping_interference_factor": self.roll_damping_interference_factor,
+        }
+
+    def evaluate_shape(self):
+        x_array, y_array = zip(*self.shape_points)
+        shape_vec = [np.array(x_array), np.array(y_array)]
+        self.shape_vec = shape_vec
+        return shape_vec
+
+    def get_data(self, include_outputs=False):
+        data = {"shape_points": self.shape_points}
+        if include_outputs:
+            data.update(
+                {
+                    "Af": getattr(self, "Af", None),
+                    "AR": getattr(self, "AR", None),
+                    "gamma_c": getattr(self, "gamma_c", None),
+                    "Yma": getattr(self, "Yma", None),
+                    "mac_length": getattr(self, "mac_length", None),
+                    "mac_lead": getattr(self, "mac_lead", None),
+                    "roll_geometrical_constant": getattr(
+                        self, "roll_geometrical_constant", None
+                    ),
+                    "tau": getattr(self, "tau", None),
+                    "lift_interference_factor": getattr(
+                        self, "lift_interference_factor", None
+                    ),
+                    "roll_forcing_interference_factor": getattr(
+                        self, "roll_forcing_interference_factor", None
+                    ),
+                    "roll_damping_interference_factor": getattr(
+                        self, "roll_damping_interference_factor", None
+                    ),
+                }
+            )
+        return data
diff --git a/rocketpy/rocket/aero_surface/fins/elliptical_fin.py b/rocketpy/rocket/aero_surface/fins/elliptical_fin.py
new file mode 100644
index 000000000..66345f2cb
--- /dev/null
+++ b/rocketpy/rocket/aero_surface/fins/elliptical_fin.py
@@ -0,0 +1,196 @@
+from rocketpy.plots.aero_surface_plots import _EllipticalFinPlots
+from rocketpy.prints.aero_surface_prints import _EllipticalFinPrints
+from rocketpy.rocket.aero_surface.fins._geometry import _EllipticalGeometry
+from rocketpy.rocket.aero_surface.fins.fin import Fin
+
+
+class EllipticalFin(Fin):
+    """Class that defines and holds information for an elliptical fin set.
+
+    This class inherits from the Fin class.
+
+    Note
+    ----
+    Local coordinate system:
+        - Origin located at the top of the root chord.
+        - Z axis along the longitudinal axis of symmetry, positive downwards (top -> bottom).
+        - Y axis perpendicular to the Z axis, in the span direction, positive upwards.
+        - X axis completes the right-handed coordinate system.
+
+    See Also
+    --------
+    Fin
+
+    Attributes
+    ----------
+    EllipticalFin.rocket_radius : float
+        The reference rocket radius used for lift coefficient normalization, in
+        meters.
+    EllipticalFin.airfoil : tuple
+        Tuple of two items. First is the airfoil lift curve.
+        Second is the unit of the curve (radians or degrees)
+    EllipticalFin.cant_angle : float
+        Fins cant angle with respect to the rocket centerline, in degrees.
+    EllipticalFin.cant_angle_rad : float
+        Fins cant angle with respect to the rocket centerline, in radians.
+    EllipticalFin.root_chord : float
+        Fin root chord in meters.
+    EllipticalFin.span : float
+        Fin span in meters.
+    EllipticalFin.name : string
+        Name of fin set.
+    EllipticalFin.sweep_length : float
+        Fins sweep length in meters. By sweep length, understand the axial
+        distance between the fin root leading edge and the fin tip leading edge
+        measured parallel to the rocket centerline.
+    EllipticalFin.sweep_angle : float
+        Fins sweep angle with respect to the rocket centerline. Must
+        be given in degrees.
+    EllipticalFin.rocket_diameter : float
+        Reference diameter of the rocket, in meters.
+    EllipticalFin.reference_area : float
+        Reference area of the rocket.
+    EllipticalFin.Af : float
+        Area of the longitudinal section of each fin in the set.
+    EllipticalFin.AR : float
+        Aspect ratio of the fin.
+    EllipticalFin.gamma_c : float
+        Fin mid-chord sweep angle.
+    EllipticalFin.Yma : float
+        Span wise position of the mean aerodynamic chord.
+    EllipticalFin.roll_geometrical_constant : float
+        Geometrical constant used in roll calculations.
+    EllipticalFin.tau : float
+        Geometrical relation used to simplify lift and roll calculations.
+    EllipticalFin.lift_interference_factor : float
+        Factor of Fin-Body interference in the lift coefficient.
+    EllipticalFin.cp : tuple
+        Tuple with the x, y and z local coordinates of the fin set center of
+        pressure. Has units of length and is given in meters.
+    EllipticalFin.cpx : float
+        Fin set local center of pressure x coordinate. Has units of length and
+        is given in meters.
+    EllipticalFin.cpy : float
+        Fin set local center of pressure y coordinate. Has units of length and
+        is given in meters.
+    EllipticalFin.cpz : float
+        Fin set local center of pressure z coordinate. Has units of length and
+        is given in meters.
+    EllipticalFin.cl : Function
+        Function which defines the lift coefficient as a function of the angle
+        of attack and the Mach number. Takes as input the angle of attack in
+        radians and the Mach number. Returns the lift coefficient.
+    EllipticalFin.clalpha : float
+        Lift coefficient slope. Has units of 1/rad.
+    """
+
+    def __init__(
+        self,
+        angular_position,
+        root_chord,
+        span,
+        rocket_radius,
+        cant_angle=0,
+        airfoil=None,
+        name="Elliptical Fin",
+    ):
+        """Initialize EllipticalFin class.
+
+        Parameters
+        ----------
+        angular_position : float
+            Angular position of the fin in degrees measured as the rotation
+            around the symmetry axis of the rocket relative to one of the other
+            principal axis. See :ref:`Angular Position Inputs `
+        root_chord : int, float
+            Fin root chord in meters.
+        span : int, float
+            Fin span in meters.
+        rocket_radius : int, float
+            Reference radius to calculate lift coefficient, in meters.
+        cant_angle : int, float, optional
+            Fins cant angle with respect to the rocket centerline. Must
+            be given in degrees.
+        sweep_length : int, float, optional
+            Fins sweep length in meters. By sweep length, understand the axial
+            distance between the fin root leading edge and the fin tip leading
+            edge measured parallel to the rocket centerline. If not given, the
+            sweep length is assumed to be equal the root chord minus the tip
+            chord, in which case the fin is a right trapezoid with its base
+            perpendicular to the rocket's axis. Cannot be used in conjunction
+            with sweep_angle.
+        sweep_angle : int, float, optional
+            Fins sweep angle with respect to the rocket centerline. Must
+            be given in degrees. If not given, the sweep angle is automatically
+            calculated, in which case the fin is assumed to be a right trapezoid
+            with its base perpendicular to the rocket's axis.
+            Cannot be used in conjunction with sweep_length.
+        airfoil : tuple, optional
+            Default is null, in which case fins will be treated as flat plates.
+            Otherwise, if tuple, fins will be considered as airfoils. The
+            tuple's first item specifies the airfoil's lift coefficient
+            by angle of attack and must be either a .csv, .txt, ndarray
+            or callable. The .csv and .txt files can contain a single line
+            header and the first column must specify the angle of attack, while
+            the second column must specify the lift coefficient. The
+            ndarray should be as [(x0, y0), (x1, y1), (x2, y2), ...]
+            where x0 is the angle of attack and y0 is the lift coefficient.
+            If callable, it should take an angle of attack as input and
+            return the lift coefficient at that angle of attack.
+            The tuple's second item is the unit of the angle of attack,
+            accepting either "radians" or "degrees".
+        name : str
+            Name of elliptical fin.
+
+        Returns
+        -------
+        None
+        """
+
+        super().__init__(
+            angular_position,
+            root_chord,
+            span,
+            rocket_radius,
+            cant_angle,
+            airfoil,
+            name,
+        )
+
+        self.geometry = _EllipticalGeometry(self)
+        self._update_geometry_chain()
+        self.evaluate_shape()
+        self.evaluate_rotation_matrix()
+
+        self.prints = _EllipticalFinPrints(self)
+        self.plots = _EllipticalFinPlots(self)
+
+    def evaluate_center_of_pressure(self):
+        """Calculates and returns the center of pressure of the fin in local
+        coordinates. The center of pressure position is saved and stored as a
+        tuple."""
+        # Barrowman elliptical-fin center of pressure location.
+        cpz = 0.288 * self.root_chord
+        self.cpx = 0
+        self.cpy = self.Yma
+        self.cpz = cpz
+        self.cp = (self.cpx, self.cpy, self.cpz)
+
+    def to_dict(self, **kwargs):
+        data = super().to_dict(**kwargs)
+        data.update(
+            self.geometry.get_data(include_outputs=kwargs.get("include_outputs", False))
+        )
+        return data
+
+    @classmethod
+    def from_dict(cls, data):
+        return cls(
+            angular_position=data["angular_position"],
+            root_chord=data["root_chord"],
+            span=data["span"],
+            rocket_radius=data["rocket_radius"],
+            cant_angle=data["cant_angle"],
+            airfoil=data["airfoil"],
+            name=data["name"],
+        )
diff --git a/rocketpy/rocket/aero_surface/fins/elliptical_fins.py b/rocketpy/rocket/aero_surface/fins/elliptical_fins.py
index 61d98bc0d..4576bd1f3 100644
--- a/rocketpy/rocket/aero_surface/fins/elliptical_fins.py
+++ b/rocketpy/rocket/aero_surface/fins/elliptical_fins.py
@@ -1,7 +1,6 @@
-import numpy as np
-
 from rocketpy.plots.aero_surface_plots import _EllipticalFinsPlots
 from rocketpy.prints.aero_surface_prints import _EllipticalFinsPrints
+from rocketpy.rocket.aero_surface.fins._geometry import _EllipticalGeometry
 
 from .fins import Fins
 
@@ -35,9 +34,6 @@ class EllipticalFins(Fins):
         Second is the unit of the curve (radians or degrees)
     EllipticalFins.cant_angle : float
         Fins cant angle with respect to the rocket centerline, in degrees.
-    EllipticalFins.changing_attribute_dict : dict
-        Dictionary that stores the name and the values of the attributes that
-        may be changed during a simulation. Useful for control systems.
     EllipticalFins.cant_angle_rad : float
         Fins cant angle with respect to the rocket centerline, in radians.
     EllipticalFins.root_chord : float
@@ -53,9 +49,9 @@ class EllipticalFins(Fins):
     EllipticalFins.sweep_angle : float
         Fins sweep angle with respect to the rocket centerline. Must
         be given in degrees.
-    EllipticalFins.d : float
+    EllipticalFins.rocket_diameter : float
         Reference diameter of the rocket, in meters.
-    EllipticalFins.ref_area : float
+    EllipticalFins.reference_area : float
         Reference area of the rocket.
     EllipticalFins.Af : float
         Area of the longitudinal section of each fin in the set.
@@ -162,10 +158,9 @@ def __init__(
             name,
         )
 
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
+        self.geometry = _EllipticalGeometry(self)
+        self._update_geometry_chain()
+        self.evaluate_shape()
 
         self.prints = _EllipticalFinsPrints(self)
         self.plots = _EllipticalFinsPlots(self)
@@ -179,160 +174,18 @@ def evaluate_center_of_pressure(self):
         -------
         None
         """
-        # Center of pressure position in local coordinates
+        # Barrowman elliptical-fin center of pressure location.
         cpz = 0.288 * self.root_chord
         self.cpx = 0
         self.cpy = 0
         self.cpz = cpz
         self.cp = (self.cpx, self.cpy, self.cpz)
 
-    def evaluate_geometrical_parameters(self):  # pylint: disable=too-many-statements
-        """Calculates and saves fin set's geometrical parameters such as the
-        fins' area, aspect ratio and parameters for roll movement.
-
-        Returns
-        -------
-        None
-        """
-
-        # Compute auxiliary geometrical parameters
-        # pylint: disable=invalid-name
-        Af = (np.pi * self.root_chord / 2 * self.span) / 2  # Fin area
-        gamma_c = 0  # Zero for elliptical fins
-        AR = 2 * self.span**2 / Af  # Fin aspect ratio
-        Yma = (
-            self.span / (3 * np.pi) * np.sqrt(9 * np.pi**2 - 64)
-        )  # Span wise coord of mean aero chord
-        roll_geometrical_constant = (
-            self.root_chord
-            * self.span
-            * (
-                3 * np.pi * self.span**2
-                + 32 * self.rocket_radius * self.span
-                + 12 * np.pi * self.rocket_radius**2
-            )
-            / 48
-        )
-
-        # Fin–body interference correction parameters
-        tau = (self.span + self.rocket_radius) / self.rocket_radius
-        lift_interference_factor = 1 + 1 / tau
-        if self.span > self.rocket_radius:
-            roll_damping_interference_factor = 1 + (
-                (self.rocket_radius**2)
-                * (
-                    2
-                    * (self.rocket_radius**2)
-                    * np.sqrt(self.span**2 - self.rocket_radius**2)
-                    * np.log(
-                        (
-                            2
-                            * self.span
-                            * np.sqrt(self.span**2 - self.rocket_radius**2)
-                            + 2 * self.span**2
-                        )
-                        / self.rocket_radius
-                    )
-                    - 2
-                    * (self.rocket_radius**2)
-                    * np.sqrt(self.span**2 - self.rocket_radius**2)
-                    * np.log(2 * self.span)
-                    + 2 * self.span**3
-                    - np.pi * self.rocket_radius * self.span**2
-                    - 2 * (self.rocket_radius**2) * self.span
-                    + np.pi * self.rocket_radius**3
-                )
-            ) / (
-                2
-                * (self.span**2)
-                * (self.span / 3 + np.pi * self.rocket_radius / 4)
-                * (self.span**2 - self.rocket_radius**2)
-            )
-        elif self.span < self.rocket_radius:
-            roll_damping_interference_factor = 1 - (
-                self.rocket_radius**2
-                * (
-                    2 * self.span**3
-                    - np.pi * self.span**2 * self.rocket_radius
-                    - 2 * self.span * self.rocket_radius**2
-                    + np.pi * self.rocket_radius**3
-                    + 2
-                    * self.rocket_radius**2
-                    * np.sqrt(-(self.span**2) + self.rocket_radius**2)
-                    * np.arctan(
-                        (self.span) / (np.sqrt(-(self.span**2) + self.rocket_radius**2))
-                    )
-                    - np.pi
-                    * self.rocket_radius**2
-                    * np.sqrt(-(self.span**2) + self.rocket_radius**2)
-                )
-            ) / (
-                2
-                * self.span
-                * (-(self.span**2) + self.rocket_radius**2)
-                * (self.span**2 / 3 + np.pi * self.span * self.rocket_radius / 4)
-            )
-        else:
-            roll_damping_interference_factor = (28 - 3 * np.pi) / (4 + 3 * np.pi)
-
-        roll_forcing_interference_factor = (1 / np.pi**2) * (
-            (np.pi**2 / 4) * ((tau + 1) ** 2 / tau**2)
-            + ((np.pi * (tau**2 + 1) ** 2) / (tau**2 * (tau - 1) ** 2))
-            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
-            - (2 * np.pi * (tau + 1)) / (tau * (tau - 1))
-            + ((tau**2 + 1) ** 2)
-            / (tau**2 * (tau - 1) ** 2)
-            * (np.arcsin((tau**2 - 1) / (tau**2 + 1))) ** 2
-            - (4 * (tau + 1))
-            / (tau * (tau - 1))
-            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
-            + (8 / (tau - 1) ** 2) * np.log((tau**2 + 1) / (2 * tau))
-        )
-
-        # Store values
-        # pylint: disable=invalid-name
-        self.Af = Af  # Fin area
-        self.AR = AR  # Fin aspect ratio
-        self.gamma_c = gamma_c  # Mid chord angle
-        self.Yma = Yma  # Span wise coord of mean aero chord
-        self.roll_geometrical_constant = roll_geometrical_constant
-        self.tau = tau
-        self.lift_interference_factor = lift_interference_factor
-        self.roll_damping_interference_factor = roll_damping_interference_factor
-        self.roll_forcing_interference_factor = roll_forcing_interference_factor
-
-        self.evaluate_shape()
-
-    def evaluate_shape(self):
-        angles = np.arange(0, 180, 5)
-        x_array = self.root_chord / 2 + self.root_chord / 2 * np.cos(np.radians(angles))
-        y_array = self.span * np.sin(np.radians(angles))
-        self.shape_vec = [x_array, y_array]
-
-    def info(self):
-        self.prints.geometry()
-        self.prints.lift()
-
-    def all_info(self):
-        self.prints.all()
-        self.plots.all()
-
     def to_dict(self, **kwargs):
         data = super().to_dict(**kwargs)
-        if kwargs.get("include_outputs", False):
-            data.update(
-                {
-                    "Af": self.Af,
-                    "AR": self.AR,
-                    "gamma_c": self.gamma_c,
-                    "Yma": self.Yma,
-                    "roll_geometrical_constant": self.roll_geometrical_constant,
-                    "tau": self.tau,
-                    "lift_interference_factor": self.lift_interference_factor,
-                    "roll_damping_interference_factor": self.roll_damping_interference_factor,
-                    "roll_forcing_interference_factor": self.roll_forcing_interference_factor,
-                }
-            )
+        data.update(
+            self.geometry.get_data(include_outputs=kwargs.get("include_outputs", False))
+        )
         return data
 
     @classmethod
diff --git a/rocketpy/rocket/aero_surface/fins/fin.py b/rocketpy/rocket/aero_surface/fins/fin.py
new file mode 100644
index 000000000..bb41c89d2
--- /dev/null
+++ b/rocketpy/rocket/aero_surface/fins/fin.py
@@ -0,0 +1,483 @@
+import math
+
+import numpy as np
+
+from rocketpy.mathutils.function import Function
+from rocketpy.mathutils.vector_matrix import Matrix, Vector
+from rocketpy.rocket.aero_surface.fins._base_fin import _BaseFin
+
+
+class Fin(_BaseFin):
+    """Abstract class that holds common methods for the individual fin classes.
+    Cannot be instantiated.
+
+    Note
+    ----
+    Local coordinate system:
+        - Origin located at the top of the root chord.
+        - Z axis along the longitudinal axis of symmetry, positive downwards (top -> bottom).
+        - Y axis perpendicular to the Z axis, in the span direction, positive upwards.
+        - X axis completes the right-handed coordinate system.
+
+    Attributes
+    ----------
+    Fin.rocket_radius : float
+        The reference rocket radius used for lift coefficient normalization,
+        in meters.
+    Fin.airfoil : tuple
+        Tuple of two items. First is the airfoil lift curve.
+        Second is the unit of the curve (radians or degrees).
+    Fin.cant_angle : float
+        Fin cant angle with respect to the rocket centerline, in degrees.
+    Fin.changing_attribute_dict : dict
+        Dictionary that stores the name and the values of the attributes that
+        may be changed during a simulation. Useful for control systems.
+    Fin.cant_angle_rad : float
+        Fin cant angle with respect to the rocket centerline, in radians.
+    Fin.root_chord : float
+        Fin root chord in meters.
+    Fin.tip_chord : float
+        Fin tip chord in meters.
+    Fin.span : float
+        Fin span in meters.
+    Fin.name : string
+        Name of fin set.
+    Fin.sweep_length : float
+        Fin sweep length in meters. By sweep length, understand the axial
+        distance between the fin root leading edge and the fin tip leading edge
+        measured parallel to the rocket centerline.
+    Fin.sweep_angle : float
+        Fin sweep angle with respect to the rocket centerline. Must
+        be given in degrees.
+    Fin.rocket_diameter : float
+        Reference diameter of the rocket. Has units of length and is given
+        in meters.
+    Fin.reference_area : float
+        Reference area of the rocket.
+    Fin.Af : float
+        Area of the longitudinal section of each fin in the set.
+    Fin.AR : float
+        Aspect ratio of each fin in the set.
+    Fin.gamma_c : float
+        Fin mid-chord sweep angle.
+    Fin.Yma : float
+        Span wise position of the mean aerodynamic chord.
+    Fin.roll_geometrical_constant : float
+        Geometrical constant used in roll calculations.
+    Fin.tau : float
+        Geometrical relation used to simplify lift and roll calculations.
+    Fin.lift_interference_factor : float
+        Factor of Fin-Body interference in the lift coefficient.
+    Fin.cp : tuple
+        Tuple with the x, y and z local coordinates of the fin set center of
+        pressure. Has units of length and is given in meters.
+    Fin.cpx : float
+        Fin set local center of pressure x coordinate. Has units of length and
+        is given in meters.
+    Fin.cpy : float
+        Fin set local center of pressure y coordinate. Has units of length and
+        is given in meters.
+    Fin.cpz : float
+        Fin set local center of pressure z coordinate. Has units of length and
+        is given in meters.
+    Fin.cl : Function
+        Function which defines the lift coefficient as a function of the angle
+        of attack and the Mach number. Takes as input the angle of attack in
+        radians and the Mach number. Returns the lift coefficient.
+    Fin.clalpha : float
+        Lift coefficient slope. Has units of 1/rad.
+    Fin.roll_parameters : list
+        List containing the roll moment lift coefficient, the roll moment
+        damping coefficient and the cant angle in radians.
+    """
+
+    def __init__(
+        self,
+        angular_position,
+        root_chord,
+        span,
+        rocket_radius,
+        cant_angle=0,
+        airfoil=None,
+        name="Fin",
+    ):
+        """Initialize Fin class.
+
+        Parameters
+        ----------
+        angular_position : float
+            Angular position of the fin in degrees measured as the rotation
+            around the symmetry axis of the rocket relative to one of the other
+            principal axis. See :ref:`Angular Position Inputs `
+        root_chord : int, float
+            Fin root chord in meters.
+        span : int, float
+            Fin span in meters.
+        rocket_radius : int, float
+            Reference rocket radius used for lift coefficient normalization.
+        cant_angle : int, float, optional
+            Fin cant angle with respect to the rocket centerline. Must
+            be given in degrees.
+        airfoil : tuple, optional
+            Default is null, in which case fins will be treated as flat plates.
+            Otherwise, if tuple, fins will be considered as airfoils. The
+            tuple's first item specifies the airfoil's lift coefficient
+            by angle of attack and must be either a .csv, .txt, ndarray
+            or callable. The .csv and .txt files can contain a single line
+            header and the first column must specify the angle of attack, while
+            the second column must specify the lift coefficient. The
+            ndarray should be as [(x0, y0), (x1, y1), (x2, y2), ...]
+            where x0 is the angle of attack and y0 is the lift coefficient.
+            If callable, it should take an angle of attack as input and
+            return the lift coefficient at that angle of attack.
+            The tuple's second item is the unit of the angle of attack,
+            accepting either "radians" or "degrees".
+        name : str
+            Name of fin.
+        """
+        super().__init__(
+            name=name,
+            rocket_radius=rocket_radius,
+            root_chord=root_chord,
+            span=span,
+            airfoil=airfoil,
+            cant_angle=cant_angle,
+        )
+
+        # Store values
+        self._angular_position = angular_position
+        self._angular_position_rad = math.radians(angular_position)
+
+    @property
+    def cant_angle(self):
+        return self._cant_angle
+
+    @cant_angle.setter
+    def cant_angle(self, value):
+        self._cant_angle = value
+        self.cant_angle_rad = math.radians(value)
+
+    @property
+    def cant_angle_rad(self):
+        return self._cant_angle_rad
+
+    @cant_angle_rad.setter
+    def cant_angle_rad(self, value):
+        self._cant_angle_rad = value
+        self.evaluate_geometrical_parameters()
+        self.evaluate_center_of_pressure()
+        self.evaluate_lift_coefficient()
+        self.evaluate_roll_parameters()
+        self.evaluate_rotation_matrix()
+
+    @property
+    def angular_position(self):
+        return self._angular_position
+
+    @angular_position.setter
+    def angular_position(self, value):
+        self._angular_position = value
+        self.angular_position_rad = math.radians(value)
+
+    @property
+    def angular_position_rad(self):
+        return self._angular_position_rad
+
+    @angular_position_rad.setter
+    def angular_position_rad(self, value):
+        self._angular_position_rad = value
+        self.evaluate_rotation_matrix()
+
+    def evaluate_lift_coefficient(self):
+        """Calculates and returns the individual fin's lift coefficient.
+
+        Note
+        ----
+        An individual :class:`Fin` models a single physical fin, so its lift
+        curve slope is the single-fin value corrected only for fin-body
+        interference. It intentionally does NOT include the empirical
+        multiple-fin interference correction (``fin_num_correction``) applied by
+        the symmetric :class:`Fins` set, because that correction is defined for a
+        set of ``n`` identical, evenly spaced fins and has no meaning for an
+        individually positioned fin. Consequently, a set of ``n`` identical
+        ``Fin`` objects will not reproduce the exact aggregate lift slope of a
+        ``Fins(n=...)`` set (they differ by ``fin_num_correction(n) / n``). For
+        standard symmetric fin sets, prefer the plural ``*Fins`` classes.
+
+        Returns
+        -------
+        None
+        """
+        self.evaluate_single_fin_lift_coefficient()
+
+        self.clalpha = self.clalpha_single_fin * self.lift_interference_factor
+
+        # Cl = clalpha * alpha
+        self.cl = Function(
+            lambda alpha, mach: alpha * self.clalpha(mach),
+            ["Alpha (rad)", "Mach"],
+            "Lift coefficient",
+        )
+
+        return self.cl
+
+    def evaluate_roll_parameters(self):
+        """Calculates and returns the fin set's roll coefficients.
+        The roll coefficients are saved in a list.
+
+        Returns
+        -------
+        self.roll_parameters : list
+            List containing the roll moment lift coefficient, the
+            roll moment damping coefficient and the cant angle in
+            radians
+        """
+        clf_delta = (
+            self.roll_forcing_interference_factor
+            * (self.Yma + self.rocket_radius)
+            * self.clalpha_single_fin
+            / self.reference_length
+        )  # Function of mach number
+        clf_delta.set_inputs("Mach")
+        clf_delta.set_outputs("Roll moment forcing coefficient derivative")
+        clf_delta.set_title(
+            "Roll moment forcing coefficient derivative vs. Mach number"
+        )
+        cld_omega = -(
+            2
+            * self.roll_damping_interference_factor
+            * self.clalpha_single_fin
+            * np.cos(self.cant_angle_rad)
+            * self.roll_geometrical_constant
+            / (self.reference_area * self.reference_length**2)
+        )  # Function of mach number
+        cld_omega.set_inputs("Mach")
+        cld_omega.set_outputs("Roll moment damping coefficient derivative")
+        cld_omega.set_title(
+            "Roll moment damping coefficient derivative vs. Mach number"
+        )
+        self.roll_parameters = [clf_delta, cld_omega, self.cant_angle_rad]
+        return self.roll_parameters
+
+    def evaluate_rotation_matrix(self):
+        """Calculates and returns the rotation matrix from the rocket body frame
+        to the fin frame.
+
+        Note
+        ----
+        Local coordinate system:
+
+        - Origin located at the leading edge of the root chord.
+        - Z axis along the longitudinal axis of the fin, positive
+          downwards (leading edge -> trailing edge).
+        - Y axis perpendicular to the Z axis, in the span direction,
+          positive upwards (root chord -> tip chord).
+        - X axis completes the right-handed coordinate system.
+
+
+        Returns
+        -------
+        None
+
+        References
+        ----------
+        :ref:`Individual Fin Model `
+        """
+        phi = self.angular_position_rad
+        delta = self.cant_angle_rad
+        sin_phi = math.sin(phi)
+        cos_phi = math.cos(phi)
+        sin_delta = math.sin(delta)
+        cos_delta = math.cos(delta)
+
+        # Rotation about body Z by angular position
+        R_phi = Matrix(
+            [
+                [cos_phi, -sin_phi, 0],
+                [sin_phi, cos_phi, 0],
+                [0, 0, 1],
+            ]
+        )
+
+        # Cant rotation about body Y
+        R_delta = Matrix(
+            [
+                [cos_delta, 0, -sin_delta],
+                [0, 1, 0],
+                [sin_delta, 0, cos_delta],
+            ]
+        )
+
+        # 180 flip about Y to align fin leading/trailing edge
+        R_pi = Matrix(
+            [
+                [-1, 0, 0],
+                [0, 1, 0],
+                [0, 0, -1],
+            ]
+        )
+
+        # Uncanted body to fin, then apply cant
+        R_uncanted = R_phi @ R_pi
+        R_body_to_fin = R_delta @ R_uncanted
+
+        # Store for downstream transforms
+        self._rotation_fin_to_body_uncanted = R_uncanted.transpose
+        self._rotation_body_to_fin = R_body_to_fin
+        self._rotation_fin_to_body = R_body_to_fin.transpose
+        self._rotation_surface_to_body = self._rotation_fin_to_body
+
+    def compute_forces_and_moments(
+        self,
+        stream_velocity,
+        stream_speed,
+        stream_mach,
+        rho,
+        cp,
+        omega,
+        *args,
+    ):  # pylint: disable=arguments-differ,unused-argument
+        """Computes the forces and moments acting on the aerodynamic surface.
+
+        Parameters
+        ----------
+        stream_velocity : tuple of float
+            The velocity of the airflow relative to the surface.
+        stream_speed : float
+            The magnitude of the airflow speed.
+        stream_mach : float
+            The Mach number of the airflow.
+        rho : float
+            Air density.
+        cp : Vector
+            Center of pressure coordinates in the body frame.
+        omega: tuple[float, float, float]
+            Tuple containing angular velocities around the x, y, z axes.
+
+        Returns
+        -------
+        tuple of float
+            The aerodynamic forces (lift, side_force, drag) and moments
+            (pitch, yaw, roll) in the body frame.
+        """
+        R1, R2, R3, M1, M2, M3 = 0, 0, 0, 0, 0, 0
+
+        # stream velocity in fin frame
+        stream_velocity_f = self._rotation_body_to_fin @ stream_velocity
+
+        attack_angle = np.arctan2(stream_velocity_f[0], stream_velocity_f[2])
+        # Force in the X direction of the fin
+        X = (
+            0.5
+            * rho
+            * stream_speed**2
+            * self.reference_area
+            * self.cl.get_value_opt(attack_angle, stream_mach)
+        )
+        # Force in body frame
+        R1, R2, R3 = self._rotation_fin_to_body @ Vector([X, 0, 0])
+        # Moments
+        M1, M2, M3 = cp ^ Vector([R1, R2, R3])
+        # Apply roll interference factor, disregarding lift interference factor
+        M3 *= self.roll_forcing_interference_factor / self.lift_interference_factor
+
+        # NOTE: roll damping is intentionally NOT added as a separate term here.
+        # Unlike the symmetric fin set (whose center of pressure lies on the
+        # roll axis), an individual fin has an off-axis center of pressure, so
+        # the roll-rate contribution ``w ^ cp`` is already injected by the Flight
+        # loop into the local stream velocity fed to this surface (see
+        # ``Flight`` ``comp_vb``). That contribution changes ``attack_angle`` and
+        # therefore already produces the roll-damping moment through the
+        # ``cp ^ R`` term above. Adding an explicit ``cld_omega`` damping term
+        # would double-count it.
+        return R1, R2, R3, M1, M2, M3
+
+    def _compute_leading_edge_position(self, position, _csys):
+        """Computes the position of the fin leading edge in a rocket's user,
+        given its position in a rocket."""
+        # Point from deflection from cant angle in the plane perpendicular to
+        # the fuselage where the fin is located in the fin frame
+        p = Vector(
+            [
+                -self.root_chord / 2 * np.sin(self.cant_angle_rad),
+                0,
+                self.root_chord / 2 * (1 - np.cos(self.cant_angle_rad)),
+            ]
+        )
+        # Rotate the point to the body frame orientation
+        p = self._rotation_fin_to_body_uncanted @ p
+
+        # Rotate the point to the user-defined coordinate system
+        p = Vector([p.x * _csys, p.y, p.z * _csys])
+
+        # Build the leading-edge position in the user frame as if no cant
+        # angle was applied. Scalars are interpreted as z coordinates only,
+        # while vectors/tuples/lists are interpreted as full (x, y, z)
+        # coordinates.
+        if isinstance(position, (Vector, tuple, list)):
+            position = Vector(position)
+        else:
+            position = Vector(
+                [
+                    -self.rocket_radius * math.sin(self.angular_position_rad) * _csys,
+                    self.rocket_radius * math.cos(self.angular_position_rad),
+                    position,
+                ]
+            )
+
+        # Translate the position of the fin leading edge to the position of the
+        # fin leading edge with cant angle
+        position += p
+        return position
+
+    def to_dict(self, **kwargs):
+        if self.airfoil:
+            if kwargs.get("discretize", False):
+                lower = -np.pi / 6 if self.airfoil[1] == "radians" else -30
+                upper = np.pi / 6 if self.airfoil[1] == "radians" else 30
+                airfoil = (
+                    self.airfoil_cl.set_discrete(lower, upper, 50, mutate_self=False),
+                    self.airfoil[1],
+                )
+            else:
+                airfoil = (self.airfoil_cl, self.airfoil[1])
+        else:
+            airfoil = None
+        data = {
+            "angular_position": self.angular_position,
+            "root_chord": self.root_chord,
+            "span": self.span,
+            "rocket_radius": self.rocket_radius,
+            "cant_angle": self.cant_angle,
+            "airfoil": airfoil,
+            "name": self.name,
+        }
+
+        if kwargs.get("include_outputs", False):
+            data.update(
+                {
+                    "cp": self.cp,
+                    "cl": self.cl,
+                    "roll_parameters": self.roll_parameters,
+                    "rocket_diameter": self.rocket_diameter,
+                    "diameter": self.rocket_diameter,
+                    "d": self.rocket_diameter,
+                    "reference_area": self.reference_area,
+                    "ref_area": self.reference_area,
+                }
+            )
+        return data
+
+    def draw(self, *, filename=None):
+        """Draw the fin shape along with some important information, including
+        the center line, the quarter line and the center of pressure position.
+
+        Parameters
+        ----------
+        filename : str | None, optional
+            The path the plot should be saved to. By default None, in which case
+            the plot will be shown instead of saved. Supported file endings are:
+            eps, jpg, jpeg, pdf, pgf, png, ps, raw, rgba, svg, svgz, tif, tiff
+            and webp (these are the formats supported by matplotlib).
+        """
+        self.plots.draw(filename=filename)
diff --git a/rocketpy/rocket/aero_surface/fins/fins.py b/rocketpy/rocket/aero_surface/fins/fins.py
index fe24a84f4..912212979 100644
--- a/rocketpy/rocket/aero_surface/fins/fins.py
+++ b/rocketpy/rocket/aero_surface/fins/fins.py
@@ -1,11 +1,10 @@
 import numpy as np
 
 from rocketpy.mathutils.function import Function
+from rocketpy.rocket.aero_surface.fins._base_fin import _BaseFin
 
-from ..aero_surface import AeroSurface
 
-
-class Fins(AeroSurface):
+class Fins(_BaseFin):
     """Abstract class that holds common methods for the fin classes.
     Cannot be instantiated.
 
@@ -49,10 +48,10 @@ class Fins(AeroSurface):
     Fins.sweep_angle : float
         Fins sweep angle with respect to the rocket centerline. Must
         be given in degrees.
-    Fins.d : float
+    Fins.rocket_diameter : float
         Reference diameter of the rocket. Has units of length and is given
         in meters.
-    Fins.ref_area : float
+    Fins.reference_area : float
         Reference area of the rocket.
     Fins.Af : float
         Area of the longitudinal section of each fin in the set.
@@ -132,27 +131,18 @@ def __init__(
             accepting either "radians" or "degrees".
         name : str
             Name of fin set.
-
-        Returns
-        -------
-        None
         """
-        # Compute auxiliary geometrical parameters
-        d = 2 * rocket_radius
-        ref_area = np.pi * rocket_radius**2  # Reference area
-
-        super().__init__(name, ref_area, d)
+        super().__init__(
+            name=name,
+            rocket_radius=rocket_radius,
+            root_chord=root_chord,
+            span=span,
+            airfoil=airfoil,
+            cant_angle=cant_angle,
+        )
 
         # Store values
         self._n = n
-        self._rocket_radius = rocket_radius
-        self._airfoil = airfoil
-        self._cant_angle = cant_angle
-        self._root_chord = root_chord
-        self._span = span
-        self.name = name
-        self.d = d
-        self.ref_area = ref_area  # Reference area
 
     @property
     def n(self):
@@ -166,134 +156,26 @@ def n(self, value):
         self.evaluate_lift_coefficient()
         self.evaluate_roll_parameters()
 
-    @property
-    def root_chord(self):
-        return self._root_chord
-
-    @root_chord.setter
-    def root_chord(self, value):
-        self._root_chord = value
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
-
-    @property
-    def span(self):
-        return self._span
-
-    @span.setter
-    def span(self, value):
-        self._span = value
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
-
-    @property
-    def rocket_radius(self):
-        return self._rocket_radius
-
-    @rocket_radius.setter
-    def rocket_radius(self, value):
-        self._rocket_radius = value
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
-
-    @property
-    def cant_angle(self):
-        return self._cant_angle
-
-    @cant_angle.setter
-    def cant_angle(self, value):
-        self._cant_angle = value
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
-
-    @property
-    def airfoil(self):
-        return self._airfoil
-
-    @airfoil.setter
-    def airfoil(self, value):
-        self._airfoil = value
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
-
     def evaluate_lift_coefficient(self):
         """Calculates and returns the fin set's lift coefficient.
         The lift coefficient is saved and returned. This function
         also calculates and saves the lift coefficient derivative
         for a single fin and the lift coefficient derivative for
         a number of n fins corrected for Fin-Body interference.
-
-        Returns
-        -------
-        None
         """
-        if not self.airfoil:
-            # Defines clalpha2D as 2*pi for planar fins
-            clalpha2D_incompressible = 2 * np.pi
-        else:
-            # Defines clalpha2D as the derivative of the lift coefficient curve
-            # for the specific airfoil
-            self.airfoil_cl = Function(
-                self.airfoil[0],
-                interpolation="linear",
-            )
-
-            # Differentiating at alpha = 0 to get cl_alpha
-            clalpha2D_incompressible = self.airfoil_cl.differentiate_complex_step(
-                x=1e-3, dx=1e-3
-            )
-
-            # Convert to radians if needed
-            if self.airfoil[1] == "degrees":
-                clalpha2D_incompressible *= 180 / np.pi
-
-        # Correcting for compressible flow (apply Prandtl-Glauert correction)
-        clalpha2D = Function(lambda mach: clalpha2D_incompressible / self._beta(mach))
-
-        # Diederich's Planform Correlation Parameter
-        planform_correlation_parameter = (
-            2 * np.pi * self.AR / (clalpha2D * np.cos(self.gamma_c))
-        )
-
-        # Lift coefficient derivative for a single fin
-        def lift_source(mach):
-            return (
-                clalpha2D(mach)
-                * planform_correlation_parameter(mach)
-                * (self.Af / self.ref_area)
-                * np.cos(self.gamma_c)
-            ) / (
-                2
-                + planform_correlation_parameter(mach)
-                * np.sqrt(1 + (2 / planform_correlation_parameter(mach)) ** 2)
-            )
-
-        self.clalpha_single_fin = Function(
-            lift_source,
-            "Mach",
-            "Lift coefficient derivative for a single fin",
-        )
+        self.evaluate_single_fin_lift_coefficient()
 
         # Lift coefficient derivative for n fins corrected with Fin-Body interference
         self.clalpha_multiple_fins = (
-            self.lift_interference_factor
-            * self.fin_num_correction(self.n)
+            self.fin_num_correction(self.n)
+            * self.lift_interference_factor
             * self.clalpha_single_fin
         )  # Function of mach number
         self.clalpha_multiple_fins.set_inputs("Mach")
         self.clalpha_multiple_fins.set_outputs(
             f"Lift coefficient derivative for {self.n:.0f} fins"
         )
+
         self.clalpha = self.clalpha_multiple_fins
 
         # Cl = clalpha * alpha
@@ -316,19 +198,18 @@ def evaluate_roll_parameters(self):
             roll moment damping coefficient and the cant angle in
             radians
         """
-
-        self.cant_angle_rad = np.radians(self.cant_angle)
-
         clf_delta = (
             self.roll_forcing_interference_factor
             * self.n
             * (self.Yma + self.rocket_radius)
             * self.clalpha_single_fin
-            / self.d
+            / self.reference_length
         )  # Function of mach number
         clf_delta.set_inputs("Mach")
         clf_delta.set_outputs("Roll moment forcing coefficient derivative")
-        clf_delta.set_title(None)
+        clf_delta.set_title(
+            "Roll moment forcing coefficient derivative vs. Mach number"
+        )
         cld_omega = (
             2
             * self.roll_damping_interference_factor
@@ -336,11 +217,13 @@ def evaluate_roll_parameters(self):
             * self.clalpha_single_fin
             * np.cos(self.cant_angle_rad)
             * self.roll_geometrical_constant
-            / (self.ref_area * self.d**2)
+            / (self.reference_area * self.reference_length**2)
         )  # Function of mach number
         cld_omega.set_inputs("Mach")
         cld_omega.set_outputs("Roll moment damping coefficient derivative")
-        cld_omega.set_title(None)
+        cld_omega.set_title(
+            "Roll moment damping coefficient derivative vs. Mach number"
+        )
         self.roll_parameters = [clf_delta, cld_omega, self.cant_angle_rad]
         return self.roll_parameters
 
@@ -463,8 +346,11 @@ def to_dict(self, **kwargs):
                     "cp": self.cp,
                     "cl": cl,
                     "roll_parameters": self.roll_parameters,
-                    "d": self.d,
-                    "ref_area": self.ref_area,
+                    "rocket_diameter": self.rocket_diameter,
+                    "diameter": self.rocket_diameter,
+                    "d": self.rocket_diameter,
+                    "reference_area": self.reference_area,
+                    "ref_area": self.reference_area,
                 }
             )
 
@@ -481,9 +367,5 @@ def draw(self, *, filename=None):
             the plot will be shown instead of saved. Supported file endings are:
             eps, jpg, jpeg, pdf, pgf, png, ps, raw, rgba, svg, svgz, tif, tiff
             and webp (these are the formats supported by matplotlib).
-
-        Returns
-        -------
-        None
         """
         self.plots.draw(filename=filename)
diff --git a/rocketpy/rocket/aero_surface/fins/free_form_fin.py b/rocketpy/rocket/aero_surface/fins/free_form_fin.py
new file mode 100644
index 000000000..767b1bd89
--- /dev/null
+++ b/rocketpy/rocket/aero_surface/fins/free_form_fin.py
@@ -0,0 +1,192 @@
+from rocketpy.plots.aero_surface_plots import _FreeFormFinPlots
+from rocketpy.prints.aero_surface_prints import _FreeFormFinPrints
+from rocketpy.rocket.aero_surface.fins._geometry import _FreeFormGeometry
+from rocketpy.rocket.aero_surface.fins.fin import Fin
+
+
+class FreeFormFin(Fin):
+    """Class that defines and holds information for a free form fin set.
+
+    This class inherits from the Fin class.
+
+    Note
+    ----
+    Local coordinate system:
+        - Origin located at the top of the root chord.
+        - Z axis along the longitudinal axis of symmetry, positive downwards (top -> bottom).
+        - Y axis perpendicular to the Z axis, in the span direction, positive upwards.
+        - X axis completes the right-handed coordinate system.
+
+    See Also
+    --------
+    Fin
+
+    Attributes
+    ----------
+    FreeFormFin.n : int
+        Number of fins in fin set.
+    FreeFormFin.rocket_radius : float
+        The reference rocket radius used for lift coefficient normalization, in
+        meters.
+    FreeFormFin.airfoil : tuple
+        Tuple of two items. First is the airfoil lift curve.
+        Second is the unit of the curve (radians or degrees).
+    FreeFormFin.cant_angle : float
+        Fins cant angle with respect to the rocket centerline, in degrees.
+    FreeFormFin.cant_angle_rad : float
+        Fins cant angle with respect to the rocket centerline, in radians.
+    FreeFormFin.root_chord : float
+        Fin root chord in meters.
+    FreeFormFin.span : float
+        Fin span in meters.
+    FreeFormFin.name : string
+        Name of fin set.
+    FreeFormFin.rocket_diameter : float
+        Reference diameter of the rocket, in meters.
+    FreeFormFin.reference_area : float
+        Reference area of the rocket, in m².
+    FreeFormFin.Af : float
+        Area of the longitudinal section of each fin in the set.
+    FreeFormFin.AR : float
+        Aspect ratio of the fin.
+    FreeFormFin.gamma_c : float
+        Fin mid-chord sweep angle.
+    FreeFormFin.Yma : float
+        Span wise position of the mean aerodynamic chord.
+    FreeFormFin.roll_geometrical_constant : float
+        Geometrical constant used in roll calculations.
+    FreeFormFin.tau : float
+        Geometrical relation used to simplify lift and roll calculations.
+    FreeFormFin.lift_interference_factor : float
+        Factor of Fin-Body interference in the lift coefficient.
+    FreeFormFin.cp : tuple
+        Tuple with the x, y and z local coordinates of the fin set center of
+        pressure. Has units of length and is given in meters.
+    FreeFormFin.cpx : float
+        Fin set local center of pressure x coordinate. Has units of length and
+        is given in meters.
+    FreeFormFin.cpy : float
+        Fin set local center of pressure y coordinate. Has units of length and
+        is given in meters.
+    FreeFormFin.cpz : float
+        Fin set local center of pressure z coordinate. Has units of length and
+        is given in meters.
+    FreeFormFin.cl : Function
+        Function which defines the lift coefficient as a function of the angle
+        of attack and the Mach number. Takes as input the angle of attack in
+        radians and the Mach number. Returns the lift coefficient.
+    FreeFormFin.clalpha : float
+        Lift coefficient slope. Has units of 1/rad.
+    FreeFormFin.mac_length : float
+        Mean aerodynamic chord length of the fin set.
+    FreeFormFin.mac_lead : float
+        Mean aerodynamic chord leading edge x coordinate.
+    """
+
+    def __init__(
+        self,
+        angular_position,
+        shape_points,
+        rocket_radius,
+        cant_angle=0,
+        airfoil=None,
+        name="Free Form Fin",
+    ):
+        """Initialize FreeFormFin class.
+
+        Parameters
+        ----------
+        angular_position : float
+            Angular position of the fin in degrees measured as the rotation
+            around the symmetry axis of the rocket relative to one of the other
+            principal axis. See :ref:`Angular Position Inputs `
+        shape_points : list
+            List of tuples (x, y) containing the coordinates of the fin's
+            geometry defining points. The point (0, 0) is the root leading edge.
+            Positive x is rearwards, positive y is upwards (span direction).
+            The shape will be interpolated between the points, in the order
+            they are given. The last point connects to the first point, and
+            represents the trailing edge.
+        rocket_radius : int, float
+            Reference radius to calculate lift coefficient, in meters.
+        cant_angle : int, float, optional
+            Fins cant angle with respect to the rocket centerline. Must
+            be given in degrees.
+        airfoil : tuple, optional
+            Default is null, in which case fins will be treated as flat plates.
+            Otherwise, if tuple, fins will be considered as airfoils. The
+            tuple's first item specifies the airfoil's lift coefficient
+            by angle of attack and must be either a .csv, .txt, ndarray
+            or callable. The .csv and .txt files can contain a single line
+            header and the first column must specify the angle of attack, while
+            the second column must specify the lift coefficient. The
+            ndarray should be as [(x0, y0), (x1, y1), (x2, y2), ...]
+            where x0 is the angle of attack and y0 is the lift coefficient.
+            If callable, it should take an angle of attack as input and
+            return the lift coefficient at that angle of attack.
+            The tuple's second item is the unit of the angle of attack,
+            accepting either "radians" or "degrees".
+        name : str
+            Name of the free form fin.
+
+        Returns
+        -------
+        None
+        """
+        root_chord, span = _FreeFormGeometry.infer_dimensions(shape_points)
+
+        super().__init__(
+            angular_position,
+            root_chord,
+            span,
+            rocket_radius,
+            cant_angle,
+            airfoil,
+            name,
+        )
+
+        self.geometry = _FreeFormGeometry(self, shape_points)
+        self._update_geometry_chain()
+        self.evaluate_shape()
+        self.evaluate_rotation_matrix()
+
+        self.prints = _FreeFormFinPrints(self)
+        self.plots = _FreeFormFinPlots(self)
+
+    def evaluate_center_of_pressure(self):
+        """Calculates and returns the center of pressure of the fin in local
+        coordinates. The center of pressure position is saved and stored as a
+        tuple.
+
+        Returns
+        -------
+        None
+        """
+        # Center of pressure position in local coordinates
+        cpz = self.mac_lead + 0.25 * self.mac_length
+        self.cpx = 0
+        self.cpy = self.Yma
+        self.cpz = cpz
+        self.cp = (self.cpx, self.cpy, self.cpz)
+
+    @property
+    def shape_points(self):
+        return self.geometry.shape_points
+
+    def to_dict(self, **kwargs):
+        data = super().to_dict(**kwargs)
+        data.update(
+            self.geometry.get_data(include_outputs=kwargs.get("include_outputs", False))
+        )
+        return data
+
+    @classmethod
+    def from_dict(cls, data):
+        return cls(
+            angular_position=data["angular_position"],
+            shape_points=data["shape_points"],
+            rocket_radius=data["rocket_radius"],
+            cant_angle=data["cant_angle"],
+            airfoil=data["airfoil"],
+            name=data["name"],
+        )
diff --git a/rocketpy/rocket/aero_surface/fins/free_form_fins.py b/rocketpy/rocket/aero_surface/fins/free_form_fins.py
index 72758171e..d7c7e9512 100644
--- a/rocketpy/rocket/aero_surface/fins/free_form_fins.py
+++ b/rocketpy/rocket/aero_surface/fins/free_form_fins.py
@@ -1,9 +1,6 @@
-import warnings
-
-import numpy as np
-
 from rocketpy.plots.aero_surface_plots import _FreeFormFinsPlots
 from rocketpy.prints.aero_surface_prints import _FreeFormFinsPrints
+from rocketpy.rocket.aero_surface.fins._geometry import _FreeFormGeometry
 
 from .fins import Fins
 
@@ -45,9 +42,9 @@ class FreeFormFins(Fins):
         Fin span in meters.
     FreeFormFins.name : string
         Name of fin set.
-    FreeFormFins.d : float
+    FreeFormFins.rocket_diameter : float
         Reference diameter of the rocket, in meters.
-    FreeFormFins.ref_area : float
+    FreeFormFins.reference_area : float
         Reference area of the rocket, in m².
     FreeFormFins.Af : float
         Area of the longitudinal section of each fin in the set.
@@ -135,23 +132,7 @@ def __init__(
         -------
         None
         """
-        self.shape_points = shape_points
-
-        down = False
-        for i in range(1, len(shape_points)):
-            if shape_points[i][1] > shape_points[i - 1][1] and down:
-                warnings.warn(
-                    "Jagged fin shape detected. This may cause small inaccuracies "
-                    "center of pressure and pitch moment calculations."
-                )
-                break
-            if shape_points[i][1] < shape_points[i - 1][1]:
-                down = True
-            i += 1
-
-        root_chord = abs(shape_points[0][0] - shape_points[-1][0])
-        ys = [point[1] for point in shape_points]
-        span = max(ys) - min(ys)
+        root_chord, span = _FreeFormGeometry.infer_dimensions(shape_points)
 
         super().__init__(
             n,
@@ -163,10 +144,9 @@ def __init__(
             name,
         )
 
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
+        self.geometry = _FreeFormGeometry(self, shape_points)
+        self._update_geometry_chain()
+        self.evaluate_shape()
 
         self.prints = _FreeFormFinsPrints(self)
         self.plots = _FreeFormFinsPlots(self)
@@ -187,215 +167,24 @@ def evaluate_center_of_pressure(self):
         self.cpz = cpz
         self.cp = (self.cpx, self.cpy, self.cpz)
 
-    def evaluate_geometrical_parameters(self):  # pylint: disable=too-many-statements
-        """
-        Calculates and saves the fin set's geometrical parameters such as the
-        fin area, aspect ratio, and parameters related to roll movement. This
-        method uses the same calculations to those in OpenRocket for free-form
-        fin shapes.
-
-        Returns
-        -------
-        None
-        """
-        # pylint: disable=invalid-name
-        # pylint: disable=too-many-locals
-        # Calculate the fin area (Af) using the Shoelace theorem (polygon area formula)
-        Af = 0
-        for i in range(len(self.shape_points) - 1):
-            x1, y1 = self.shape_points[i]
-            x2, y2 = self.shape_points[i + 1]
-            Af += (y1 + y2) * (x1 - x2)
-        Af = abs(Af) / 2
-        if Af < 1e-6:
-            raise ValueError("Fin area is too small. Check the shape_points.")
-
-        # Calculate aspect ratio (AR) and lift interference factors
-        AR = 2 * self.span**2 / Af  # Aspect ratio
-        tau = (self.span + self.rocket_radius) / self.rocket_radius
-        lift_interference_factor = 1 + 1 / tau
-
-        # Calculate roll forcing interference factor using OpenRocket's approach
-        roll_forcing_interference_factor = (1 / np.pi**2) * (
-            (np.pi**2 / 4) * ((tau + 1) ** 2 / tau**2)
-            + ((np.pi * (tau**2 + 1) ** 2) / (tau**2 * (tau - 1) ** 2))
-            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
-            - (2 * np.pi * (tau + 1)) / (tau * (tau - 1))
-            + ((tau**2 + 1) ** 2 / (tau**2 * (tau - 1) ** 2))
-            * (np.arcsin((tau**2 - 1) / (tau**2 + 1))) ** 2
-            - (4 * (tau + 1))
-            / (tau * (tau - 1))
-            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
-            + (8 / (tau - 1) ** 2) * np.log((tau**2 + 1) / (2 * tau))
-        )
-
-        # Define number of interpolation points along the span of the fin
-        points_per_line = 40  # Same as OpenRocket
-
-        # Initialize arrays for leading/trailing edge and chord lengths
-        chord_lead = np.ones(points_per_line) * np.inf  # Leading edge x coordinates
-        chord_trail = np.ones(points_per_line) * -np.inf  # Trailing edge x coordinates
-        chord_length = np.zeros(
-            points_per_line
-        )  # Chord length for each spanwise section
-
-        # Discretize fin shape and calculate chord length, leading, and trailing edges
-        for p in range(1, len(self.shape_points)):
-            x1, y1 = self.shape_points[p - 1]
-            x2, y2 = self.shape_points[p]
-
-            # Compute corresponding points along the fin span (clamp to valid range)
-            prev_idx = int(y1 / self.span * (points_per_line - 1))
-            curr_idx = int(y2 / self.span * (points_per_line - 1))
-            prev_idx = np.clip(prev_idx, 0, points_per_line - 1)
-            curr_idx = np.clip(curr_idx, 0, points_per_line - 1)
-
-            if prev_idx > curr_idx:
-                prev_idx, curr_idx = curr_idx, prev_idx
-
-            # Compute intersection of fin edge with each spanwise section
-            for i in range(prev_idx, curr_idx + 1):
-                y = i * self.span / (points_per_line - 1)
-                if y1 != y2:
-                    x = np.clip(
-                        (y - y2) / (y1 - y2) * x1 + (y1 - y) / (y1 - y2) * x2,
-                        min(x1, x2),
-                        max(x1, x2),
-                    )
-                else:
-                    x = x1  # Handle horizontal segments
-
-                # Update leading and trailing edge positions
-                chord_lead[i] = min(chord_lead[i], x)
-                chord_trail[i] = max(chord_trail[i], x)
-
-                # Update chord length
-                if y1 < y2:
-                    chord_length[i] -= x
-                else:
-                    chord_length[i] += x
-
-        # Replace infinities and handle invalid values in chord_lead and chord_trail
-        for i in range(points_per_line):
-            if (
-                np.isinf(chord_lead[i])
-                or np.isinf(chord_trail[i])
-                or np.isnan(chord_lead[i])
-                or np.isnan(chord_trail[i])
-            ):
-                chord_lead[i] = 0
-                chord_trail[i] = 0
-            if chord_length[i] < 0 or np.isnan(chord_length[i]):
-                chord_length[i] = 0
-            if chord_length[i] > chord_trail[i] - chord_lead[i]:
-                chord_length[i] = chord_trail[i] - chord_lead[i]
-
-        # Initialize integration variables for various aerodynamic and roll properties
-        radius = self.rocket_radius
-        total_area = 0
-        mac_length = 0  # Mean aerodynamic chord length
-        mac_lead = 0  # Mean aerodynamic chord leading edge
-        mac_span = 0  # Mean aerodynamic chord spanwise position (Yma)
-        cos_gamma_sum = 0  # Sum of cosine of the sweep angle
-        roll_geometrical_constant = 0
-        roll_damping_numerator = 0
-        roll_damping_denominator = 0
-
-        # Perform integration over spanwise sections
-        dy = self.span / (points_per_line - 1)
-        for i in range(points_per_line):
-            chord = chord_trail[i] - chord_lead[i]
-            y = i * dy
-
-            # Update integration variables
-            mac_length += chord * chord
-            mac_span += y * chord
-            mac_lead += chord_lead[i] * chord
-            total_area += chord
-            roll_geometrical_constant += chord_length[i] * (radius + y) ** 2
-            roll_damping_numerator += radius**3 * chord / (radius + y) ** 2
-            roll_damping_denominator += (radius + y) * chord
-
-            # Update cosine of sweep angle (cos_gamma)
-            if i > 0:
-                dx = (chord_trail[i] + chord_lead[i]) / 2 - (
-                    chord_trail[i - 1] + chord_lead[i - 1]
-                ) / 2
-                cos_gamma_sum += dy / np.hypot(dx, dy)
-
-        # Finalize mean aerodynamic chord properties
-        mac_length *= dy
-        mac_span *= dy
-        mac_lead *= dy
-        total_area *= dy
-        roll_geometrical_constant *= dy
-        roll_damping_numerator *= dy
-        roll_damping_denominator *= dy
-
-        mac_length /= total_area
-        mac_span /= total_area
-        mac_lead /= total_area
-        cos_gamma = cos_gamma_sum / (points_per_line - 1)
-
-        # Store computed values
-        self.Af = Af  # Fin area
-        self.AR = AR  # Aspect ratio
-        self.gamma_c = np.arccos(cos_gamma)  # Sweep angle
-        self.Yma = mac_span  # Mean aerodynamic chord spanwise position
-        self.mac_length = mac_length
-        self.mac_lead = mac_lead
-        self.tau = tau
-        self.roll_geometrical_constant = roll_geometrical_constant
-        self.lift_interference_factor = lift_interference_factor
-        self.roll_forcing_interference_factor = roll_forcing_interference_factor
-        self.roll_damping_interference_factor = 1 + (
-            roll_damping_numerator / roll_damping_denominator
-        )
-
-        # Evaluate the shape and finalize geometry
-        self.evaluate_shape()
-
-    def evaluate_shape(self):
-        x_array, y_array = zip(*self.shape_points)
-        self.shape_vec = [np.array(x_array), np.array(y_array)]
+    @property
+    def shape_points(self):
+        return self.geometry.shape_points
 
     def to_dict(self, **kwargs):
         data = super().to_dict(**kwargs)
-        data["shape_points"] = self.shape_points
-
-        if kwargs.get("include_outputs", False):
-            data.update(
-                {
-                    "Af": self.Af,
-                    "AR": self.AR,
-                    "gamma_c": self.gamma_c,
-                    "Yma": self.Yma,
-                    "mac_length": self.mac_length,
-                    "mac_lead": self.mac_lead,
-                    "roll_geometrical_constant": self.roll_geometrical_constant,
-                    "tau": self.tau,
-                    "lift_interference_factor": self.lift_interference_factor,
-                    "roll_forcing_interference_factor": self.roll_forcing_interference_factor,
-                    "roll_damping_interference_factor": self.roll_damping_interference_factor,
-                }
-            )
+        data.update(
+            self.geometry.get_data(include_outputs=kwargs.get("include_outputs", False))
+        )
         return data
 
     @classmethod
     def from_dict(cls, data):
         return cls(
-            data["n"],
-            data["shape_points"],
-            data["rocket_radius"],
-            data["cant_angle"],
-            data["airfoil"],
-            data["name"],
+            n=data["n"],
+            shape_points=data["shape_points"],
+            rocket_radius=data["rocket_radius"],
+            cant_angle=data["cant_angle"],
+            airfoil=data["airfoil"],
+            name=data["name"],
         )
-
-    def info(self):
-        self.prints.geometry()
-        self.prints.lift()
-
-    def all_info(self):
-        self.prints.all()
-        self.plots.all()
diff --git a/rocketpy/rocket/aero_surface/fins/trapezoidal_fin.py b/rocketpy/rocket/aero_surface/fins/trapezoidal_fin.py
new file mode 100644
index 000000000..872aebe97
--- /dev/null
+++ b/rocketpy/rocket/aero_surface/fins/trapezoidal_fin.py
@@ -0,0 +1,242 @@
+from rocketpy.plots.aero_surface_plots import _TrapezoidalFinPlots
+from rocketpy.prints.aero_surface_prints import _TrapezoidalFinPrints
+from rocketpy.rocket.aero_surface.fins._geometry import _TrapezoidalGeometry
+
+from .fin import Fin
+
+
+class TrapezoidalFin(Fin):
+    """A class used to represent a single trapezoidal fin.
+
+    This class inherits from the Fin class.
+
+    Note
+    ----
+    Local coordinate system:
+        - Origin located at the top of the root chord.
+        - Z axis along the longitudinal axis of symmetry, positive downwards (top -> bottom).
+        - Y axis perpendicular to the Z axis, in the span direction, positive upwards.
+        - X axis completes the right-handed coordinate system.
+
+    See Also
+    --------
+    Fin : Parent class
+
+    Attributes
+    ----------
+    TrapezoidalFin.angular_position : float
+        Angular position of the fin set with respect to the rocket centerline,
+        in degrees.
+    TrapezoidalFin.rocket_radius : float
+        The reference rocket radius used for lift coefficient normalization, in
+        meters.
+    TrapezoidalFin.airfoil : tuple
+        Tuple of two items. First is the airfoil lift curve.
+        Second is the unit of the curve (radians or degrees).
+    TrapezoidalFin.cant_angle : float
+        Fins cant angle with respect to the rocket centerline, in degrees.
+    TrapezoidalFin.cant_angle_rad : float
+        Fins cant angle with respect to the rocket centerline, in radians.
+    TrapezoidalFin.root_chord : float
+        Fin root chord in meters.
+    TrapezoidalFin.tip_chord : float
+        Fin tip chord in meters.
+    TrapezoidalFin.span : float
+        Fin span in meters.
+    TrapezoidalFin.name : string
+        Name of fin set.
+    TrapezoidalFin.sweep_length : float
+        Fins sweep length in meters. By sweep length, understand the axial
+        distance between the fin root leading edge and the fin tip leading edge
+        measured parallel to the rocket centerline.
+    TrapezoidalFin.sweep_angle : float
+        Fins sweep angle with respect to the rocket centerline. Must
+        be given in degrees.
+    TrapezoidalFin.rocket_diameter : float
+        Reference diameter of the rocket, in meters.
+    TrapezoidalFins.fin_area : float
+        Area of the longitudinal section of each fin in the set.
+    TrapezoidalFins.AR : float
+        Aspect ratio of the fin.
+    TrapezoidalFin.gamma_c : float
+        Fin mid-chord sweep angle.
+    TrapezoidalFin.yma : float
+        Span wise position of the mean aerodynamic chord.
+    TrapezoidalFin.roll_geometrical_constant : float
+        Geometrical constant used in roll calculations.
+    TrapezoidalFin.tau : float
+        Geometrical relation used to simplify lift and roll calculations.
+    TrapezoidalFin.lift_interference_factor : float
+        Factor of Fin-Body interference in the lift coefficient.
+    TrapezoidalFin.cp : tuple
+        Tuple with the x, y and z local coordinates of the fin set center of
+        pressure. Has units of length and is given in meters.
+    TrapezoidalFin.cpx : float
+        Fin set local center of pressure x coordinate. Has units of length and
+        is given in meters.
+    TrapezoidalFin.cpy : float
+        Fin set local center of pressure y coordinate. Has units of length and
+        is given in meters.
+    TrapezoidalFin.cpz : float
+        Fin set local center of pressure z coordinate. Has units of length and
+        is given in meters.
+    """
+
+    def __init__(
+        self,
+        angular_position,
+        root_chord,
+        tip_chord,
+        span,
+        rocket_radius,
+        cant_angle=0,
+        sweep_length=None,
+        sweep_angle=None,
+        airfoil=None,
+        name="Trapezoidal Fin",
+    ):
+        """Initializes the TrapezoidalFin class.
+
+        Parameters
+        ----------
+        angular_position : float
+            Angular position of the fin in degrees measured as the rotation
+            around the symmetry axis of the rocket relative to one of the other
+            principal axis. See :ref:`Angular Position Inputs `
+        root_chord : int, float
+            Fin root chord in meters.
+        tip_chord : int, float
+            Fin tip chord in meters.
+        span : int, float
+            Fin span in meters.
+        rocket_radius : int, float
+            Reference radius to calculate lift coefficient, in meters.
+        cant_angle : int, float, optional
+            Fins cant angle with respect to the rocket centerline. Must
+            be given in degrees.
+        sweep_length : int, float, optional
+            Fins sweep length in meters. By sweep length, understand the axial
+            distance between the fin root leading edge and the fin tip leading
+            edge measured parallel to the rocket centerline. If not given, the
+            sweep length is assumed to be equal the root chord minus the tip
+            chord, in which case the fin is a right trapezoid with its base
+            perpendicular to the rocket's axis. Cannot be used in conjunction
+            with sweep_angle.
+        sweep_angle : int, float, optional
+            Fins sweep angle with respect to the rocket centerline. Must
+            be given in degrees. If not given, the sweep angle is automatically
+            calculated, in which case the fin is assumed to be a right trapezoid
+            with its base perpendicular to the rocket's axis.
+            Cannot be used in conjunction with sweep_length.
+        airfoil : tuple, optional
+            Default is null, in which case fins will be treated as flat plates.
+            Otherwise, if tuple, fins will be considered as airfoils. The
+            tuple's first item specifies the airfoil's lift coefficient
+            by angle of attack and must be either a .csv, .txt, ndarray
+            or callable. The .csv and .txt files can contain a single line
+            header and the first column must specify the angle of attack, while
+            the second column must specify the lift coefficient. The
+            ndarray should be as [(x0, y0), (x1, y1), (x2, y2), ...]
+            where x0 is the angle of attack and y0 is the lift coefficient.
+            If callable, it should take an angle of attack as input and
+            return the lift coefficient at that angle of attack.
+            The tuple's second item is the unit of the angle of attack,
+            accepting either "radians" or "degrees".
+        name : str
+            Name of the trapezoidal fin.
+        """
+        super().__init__(
+            angular_position,
+            root_chord,
+            span,
+            rocket_radius,
+            cant_angle,
+            airfoil,
+            name,
+        )
+
+        self.geometry = _TrapezoidalGeometry(
+            self,
+            tip_chord=tip_chord,
+            sweep_length=sweep_length,
+            sweep_angle=sweep_angle,
+        )
+        self._update_geometry_chain()
+        self.evaluate_shape()
+        self.evaluate_rotation_matrix()
+
+        self.prints = _TrapezoidalFinPrints(self)
+        self.plots = _TrapezoidalFinPlots(self)
+
+    @property
+    def tip_chord(self):
+        return self.geometry.tip_chord
+
+    @tip_chord.setter
+    def tip_chord(self, value):
+        self.geometry.tip_chord = value
+        self._update_geometry_chain()
+        self.evaluate_shape()
+
+    @property
+    def sweep_angle(self):
+        return self.geometry.sweep_angle
+
+    @sweep_angle.setter
+    def sweep_angle(self, value):
+        self.geometry.sweep_angle = value
+        self._update_geometry_chain()
+        self.evaluate_shape()
+
+    @property
+    def sweep_length(self):
+        return self.geometry.sweep_length
+
+    @sweep_length.setter
+    def sweep_length(self, value):
+        self.geometry.sweep_length = value
+        self._update_geometry_chain()
+        self.evaluate_shape()
+
+    def evaluate_center_of_pressure(self):
+        """Calculates and returns the center of pressure of the fin in local
+        coordinates. The center of pressure position is saved and stored as a
+        tuple.
+
+        Returns
+        -------
+        None
+        """
+        # Center of pressure position in local coordinates
+        cpz = (self.sweep_length / 3) * (
+            (self.root_chord + 2 * self.tip_chord) / (self.root_chord + self.tip_chord)
+        ) + (1 / 6) * (
+            self.root_chord
+            + self.tip_chord
+            - self.root_chord * self.tip_chord / (self.root_chord + self.tip_chord)
+        )
+        self.cpx = 0
+        self.cpy = self.Yma
+        self.cpz = cpz
+        self.cp = (self.cpx, self.cpy, self.cpz)
+
+    def to_dict(self, **kwargs):
+        data = super().to_dict(**kwargs)
+        data.update(
+            self.geometry.get_data(include_outputs=kwargs.get("include_outputs", False))
+        )
+        return data
+
+    @classmethod
+    def from_dict(cls, data):
+        return cls(
+            angular_position=data["angular_position"],
+            root_chord=data["root_chord"],
+            tip_chord=data["tip_chord"],
+            span=data["span"],
+            rocket_radius=data["rocket_radius"],
+            cant_angle=data["cant_angle"],
+            sweep_length=data.get("sweep_length"),
+            airfoil=data["airfoil"],
+            name=data["name"],
+        )
diff --git a/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py b/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py
index c6b4ea633..2c9adea58 100644
--- a/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py
+++ b/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py
@@ -1,7 +1,6 @@
-import numpy as np
-
 from rocketpy.plots.aero_surface_plots import _TrapezoidalFinsPlots
 from rocketpy.prints.aero_surface_prints import _TrapezoidalFinsPrints
+from rocketpy.rocket.aero_surface.fins._geometry import _TrapezoidalGeometry
 
 from .fins import Fins
 
@@ -35,9 +34,6 @@ class TrapezoidalFins(Fins):
         Second is the unit of the curve (radians or degrees).
     TrapezoidalFins.cant_angle : float
         Fins cant angle with respect to the rocket centerline, in degrees.
-    TrapezoidalFins.changing_attribute_dict : dict
-        Dictionary that stores the name and the values of the attributes that
-        may be changed during a simulation. Useful for control systems.
     TrapezoidalFins.cant_angle_rad : float
         Fins cant angle with respect to the rocket centerline, in radians.
     TrapezoidalFins.root_chord : float
@@ -55,9 +51,9 @@ class TrapezoidalFins(Fins):
     TrapezoidalFins.sweep_angle : float
         Fins sweep angle with respect to the rocket centerline. Must
         be given in degrees.
-    TrapezoidalFins.d : float
+    TrapezoidalFins.rocket_diameter : float
         Reference diameter of the rocket, in meters.
-    TrapezoidalFins.ref_area : float
+    TrapezoidalFins.reference_area : float
         Reference area of the rocket, in m².
     TrapezoidalFins.Af : float
         Area of the longitudinal section of each fin in the set.
@@ -169,62 +165,47 @@ def __init__(
             name,
         )
 
-        # Check if sweep angle or sweep length is given
-        if sweep_length is not None and sweep_angle is not None:
-            raise ValueError("Cannot use sweep_length and sweep_angle together")
-        elif sweep_angle is not None:
-            sweep_length = np.tan(sweep_angle * np.pi / 180) * span
-        elif sweep_length is None:
-            sweep_length = root_chord - tip_chord
-
-        self._tip_chord = tip_chord
-        self._sweep_length = sweep_length
-        self._sweep_angle = sweep_angle
-
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
+        self.geometry = _TrapezoidalGeometry(
+            self,
+            tip_chord=tip_chord,
+            sweep_length=sweep_length,
+            sweep_angle=sweep_angle,
+        )
+        self._update_geometry_chain()
+        self.evaluate_shape()
 
         self.prints = _TrapezoidalFinsPrints(self)
         self.plots = _TrapezoidalFinsPlots(self)
 
     @property
     def tip_chord(self):
-        return self._tip_chord
+        return self.geometry.tip_chord
 
     @tip_chord.setter
     def tip_chord(self, value):
-        self._tip_chord = value
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
+        self.geometry.tip_chord = value
+        self._update_geometry_chain()
+        self.evaluate_shape()
 
     @property
     def sweep_angle(self):
-        return self._sweep_angle
+        return self.geometry.sweep_angle
 
     @sweep_angle.setter
     def sweep_angle(self, value):
-        self._sweep_angle = value
-        self._sweep_length = np.tan(value * np.pi / 180) * self.span
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
+        self.geometry.sweep_angle = value
+        self._update_geometry_chain()
+        self.evaluate_shape()
 
     @property
     def sweep_length(self):
-        return self._sweep_length
+        return self.geometry.sweep_length
 
     @sweep_length.setter
     def sweep_length(self, value):
-        self._sweep_length = value
-        self.evaluate_geometrical_parameters()
-        self.evaluate_center_of_pressure()
-        self.evaluate_lift_coefficient()
-        self.evaluate_roll_parameters()
+        self.geometry.sweep_length = value
+        self._update_geometry_chain()
+        self.evaluate_shape()
 
     def evaluate_center_of_pressure(self):
         """Calculates and returns the center of pressure of the fin set in local
@@ -248,124 +229,11 @@ def evaluate_center_of_pressure(self):
         self.cpz = cpz
         self.cp = (self.cpx, self.cpy, self.cpz)
 
-    def evaluate_geometrical_parameters(self):  # pylint: disable=too-many-statements
-        """Calculates and saves fin set's geometrical parameters such as the
-        fins' area, aspect ratio and parameters for roll movement.
-
-        Returns
-        -------
-        None
-        """
-        # pylint: disable=invalid-name
-        Yr = self.root_chord + self.tip_chord
-        Af = Yr * self.span / 2  # Fin area
-        AR = 2 * self.span**2 / Af  # Fin aspect ratio
-        gamma_c = np.arctan(
-            (self.sweep_length + 0.5 * self.tip_chord - 0.5 * self.root_chord)
-            / (self.span)
-        )
-        Yma = (
-            (self.span / 3) * (self.root_chord + 2 * self.tip_chord) / Yr
-        )  # Span wise coord of mean aero chord
-
-        # Fin–body interference correction parameters
-        tau = (self.span + self.rocket_radius) / self.rocket_radius
-        lift_interference_factor = 1 + 1 / tau
-        lambda_ = self.tip_chord / self.root_chord
-
-        # Parameters for Roll Moment.
-        # Documented at: https://docs.rocketpy.org/en/latest/technical/
-        roll_geometrical_constant = (
-            (self.root_chord + 3 * self.tip_chord) * self.span**3
-            + 4
-            * (self.root_chord + 2 * self.tip_chord)
-            * self.rocket_radius
-            * self.span**2
-            + 6 * (self.root_chord + self.tip_chord) * self.span * self.rocket_radius**2
-        ) / 12
-        roll_damping_interference_factor = 1 + (
-            ((tau - lambda_) / (tau)) - ((1 - lambda_) / (tau - 1)) * np.log(tau)
-        ) / (
-            ((tau + 1) * (tau - lambda_)) / (2)
-            - ((1 - lambda_) * (tau**3 - 1)) / (3 * (tau - 1))
-        )
-        roll_forcing_interference_factor = (1 / np.pi**2) * (
-            (np.pi**2 / 4) * ((tau + 1) ** 2 / tau**2)
-            + ((np.pi * (tau**2 + 1) ** 2) / (tau**2 * (tau - 1) ** 2))
-            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
-            - (2 * np.pi * (tau + 1)) / (tau * (tau - 1))
-            + ((tau**2 + 1) ** 2)
-            / (tau**2 * (tau - 1) ** 2)
-            * (np.arcsin((tau**2 - 1) / (tau**2 + 1))) ** 2
-            - (4 * (tau + 1))
-            / (tau * (tau - 1))
-            * np.arcsin((tau**2 - 1) / (tau**2 + 1))
-            + (8 / (tau - 1) ** 2) * np.log((tau**2 + 1) / (2 * tau))
-        )
-
-        # Store values
-        self.Yr = Yr
-        self.Af = Af  # Fin area
-        self.AR = AR  # Aspect Ratio
-        self.gamma_c = gamma_c  # Mid chord angle
-        self.Yma = Yma  # Span wise coord of mean aero chord
-        self.roll_geometrical_constant = roll_geometrical_constant
-        self.tau = tau
-        self.lift_interference_factor = lift_interference_factor
-        self.λ = lambda_  # pylint: disable=non-ascii-name
-        self.roll_damping_interference_factor = roll_damping_interference_factor
-        self.roll_forcing_interference_factor = roll_forcing_interference_factor
-
-        self.evaluate_shape()
-
-    def evaluate_shape(self):
-        if self.sweep_length:
-            points = [
-                (0, 0),
-                (self.sweep_length, self.span),
-                (self.sweep_length + self.tip_chord, self.span),
-                (self.root_chord, 0),
-            ]
-        else:
-            points = [
-                (0, 0),
-                (self.root_chord - self.tip_chord, self.span),
-                (self.root_chord, self.span),
-                (self.root_chord, 0),
-            ]
-
-        x_array, y_array = zip(*points)
-        self.shape_vec = [np.array(x_array), np.array(y_array)]
-
-    def info(self):
-        self.prints.geometry()
-        self.prints.lift()
-
-    def all_info(self):
-        self.prints.all()
-        self.plots.all()
-
     def to_dict(self, **kwargs):
         data = super().to_dict(**kwargs)
-        data["tip_chord"] = self.tip_chord
-        data["sweep_length"] = self.sweep_length
-        data["sweep_angle"] = self.sweep_angle
-
-        if kwargs.get("include_outputs", False):
-            data.update(
-                {
-                    "shape_vec": self.shape_vec,
-                    "Af": self.Af,
-                    "AR": self.AR,
-                    "gamma_c": self.gamma_c,
-                    "Yma": self.Yma,
-                    "roll_geometrical_constant": self.roll_geometrical_constant,
-                    "tau": self.tau,
-                    "lift_interference_factor": self.lift_interference_factor,
-                    "roll_damping_interference_factor": self.roll_damping_interference_factor,
-                    "roll_forcing_interference_factor": self.roll_forcing_interference_factor,
-                }
-            )
+        data.update(
+            self.geometry.get_data(include_outputs=kwargs.get("include_outputs", False))
+        )
         return data
 
     @classmethod
diff --git a/rocketpy/rocket/aero_surface/generic_surface.py b/rocketpy/rocket/aero_surface/generic_surface.py
index 8ab438620..d1ae3a8f0 100644
--- a/rocketpy/rocket/aero_surface/generic_surface.py
+++ b/rocketpy/rocket/aero_surface/generic_surface.py
@@ -85,6 +85,8 @@ def __init__(
         self.cpz = center_of_pressure[2]
         self.name = name
 
+        self._rotation_surface_to_body = Matrix([[1, 0, 0], [0, 1, 0], [0, 0, 1]])
+
         default_coefficients = self._get_default_coefficients()
         self._check_coefficients(coefficients, default_coefficients)
         coefficients = self._complete_coefficients(coefficients, default_coefficients)
diff --git a/rocketpy/rocket/aero_surface/nose_cone.py b/rocketpy/rocket/aero_surface/nose_cone.py
index 240a61a5c..fb2ac85d2 100644
--- a/rocketpy/rocket/aero_surface/nose_cone.py
+++ b/rocketpy/rocket/aero_surface/nose_cone.py
@@ -1,3 +1,4 @@
+import logging
 import warnings
 
 import numpy as np
@@ -9,6 +10,8 @@
 
 from .aero_surface import AeroSurface
 
+logger = logging.getLogger(__name__)
+
 
 class NoseCone(AeroSurface):
     """Keeps nose cone information.
@@ -445,9 +448,11 @@ def final_shape(x):
         self.shape_vec = [nosecone_x, nosecone_y]
         if abs(nosecone_x[-1] - self.length) >= 0.001:  # 1 millimeter
             self._length = nosecone_x[-1]
-            print(
-                "Due to the chosen bluffness ratio, the nose "
-                f"cone length was reduced to {self.length} m."
+            warnings.warn(
+                f"Due to the chosen bluffness ratio, the nose cone length was "
+                f"reduced to {self.length:.4f} m.",
+                UserWarning,
+                stacklevel=2,
             )
         self.fineness_ratio = self.length / (2 * self.base_radius)
 
diff --git a/rocketpy/rocket/aero_surface/rail_buttons.py b/rocketpy/rocket/aero_surface/rail_buttons.py
index 89331c99f..7d3a9bd30 100644
--- a/rocketpy/rocket/aero_surface/rail_buttons.py
+++ b/rocketpy/rocket/aero_surface/rail_buttons.py
@@ -17,6 +17,7 @@ class RailButtons(AeroSurface):
         Angular position of the rail buttons in degrees measured
         as the rotation around the symmetry axis of the rocket
         relative to one of the other principal axis.
+        See :ref:`Angular Position Inputs `
     RailButtons.angular_position_rad : float
         Angular position of the rail buttons in radians.
     RailButtons.button_height : float, optional
diff --git a/rocketpy/rocket/components.py b/rocketpy/rocket/components.py
index 9ce8595b3..57e4d12f8 100644
--- a/rocketpy/rocket/components.py
+++ b/rocketpy/rocket/components.py
@@ -1,4 +1,5 @@
 from collections import namedtuple
+from copy import deepcopy
 
 
 class Components:
@@ -186,7 +187,7 @@ def clear(self):
         self._components.clear()
 
     def sort_by_position(self, reverse=False):
-        """Sort the list of components by z axis position.
+        """Returns a new Components object sorted components by z axis position.
 
         Parameters
         ----------
@@ -196,9 +197,12 @@ def sort_by_position(self, reverse=False):
 
         Returns
         -------
-        None
+        Components
+            A new Components object sorted by component position.
         """
-        self._components.sort(key=lambda x: x.position.z, reverse=reverse)
+        components = deepcopy(self)
+        components._components.sort(key=lambda x: x.position.z, reverse=reverse)
+        return components
 
     def to_dict(self, **kwargs):  # pylint: disable=unused-argument
         return {
diff --git a/rocketpy/rocket/parachute.py b/rocketpy/rocket/parachute.py
index 4e0318d18..137e98e3a 100644
--- a/rocketpy/rocket/parachute.py
+++ b/rocketpy/rocket/parachute.py
@@ -1,408 +1,23 @@
-from inspect import signature
+"""Backward-compatibility shim for the relocated parachute module.
 
-import numpy as np
+The parachute classes moved from ``rocketpy.rocket.parachute`` to the
+``rocketpy.rocket.parachutes`` subpackage, and the old concrete ``Parachute``
+class became an abstract base with the hemispherical model split out into
+``HemisphericalParachute``. Importing from this module still works for backward
+compatibility but is deprecated and will be removed in v1.15.0.
+"""
 
-from rocketpy.tools import from_hex_decode, to_hex_encode
+import warnings
 
-from ..mathutils.function import Function
-from ..prints.parachute_prints import _ParachutePrints
+from .parachutes.hemispherical_parachute import HemisphericalParachute
+from .parachutes.parachute import Parachute
 
+warnings.warn(
+    "Importing from 'rocketpy.rocket.parachute' is deprecated and will be "
+    "removed in v1.15.0. Import from 'rocketpy.rocket.parachutes' instead, "
+    "e.g. 'from rocketpy.rocket.parachutes import HemisphericalParachute'.",
+    DeprecationWarning,
+    stacklevel=2,
+)
 
-class Parachute:
-    """Keeps information of the parachute, which is modeled as a hemispheroid.
-
-    Attributes
-    ----------
-    Parachute.name : string
-        Parachute name, such as drogue and main. Has no impact in
-        simulation, as it is only used to display data in a more
-        organized matter.
-    Parachute.cd_s : float
-        Drag coefficient times reference area for parachute. It has units of
-        area and must be given in squared meters.
-    Parachute.trigger : callable, float, str
-        This parameter defines the trigger condition for the parachute ejection
-        system. It can be one of the following:
-
-        - A callable function that takes three arguments:
-          1. Freestream pressure in pascals.
-          2. Height in meters above ground level.
-          3. The state vector of the simulation, which is defined as:
-
-             `[x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]`.
-
-          4. A list of sensors that are attached to the rocket. The most recent
-             measurements of the sensors are provided with the
-             ``sensor.measurement`` attribute. The sensors are listed in the same
-             order as they are added to the rocket.
-
-          The function should return ``True`` if the parachute ejection system
-          should be triggered and False otherwise. The function will be called
-          according to the specified sampling rate.
-
-        - A float value, representing an absolute height in meters. In this
-          case, the parachute will be ejected when the rocket reaches this height
-          above ground level.
-
-        - The string "apogee" which triggers the parachute at apogee, i.e.,
-          when the rocket reaches its highest point and starts descending.
-
-
-    Parachute.triggerfunc : function
-        Trigger function created from the trigger used to evaluate the trigger
-        condition for the parachute ejection system. It is a callable function
-        that takes three arguments: Freestream pressure in Pa, Height above
-        ground level in meters, and the state vector of the simulation. The
-        returns ``True`` if the parachute ejection system should be triggered
-        and ``False`` otherwise.
-
-        .. note:
-
-            The function will be called according to the sampling rate specified.
-
-    Parachute.sampling_rate : float
-        Sampling rate, in Hz, for the trigger function.
-    Parachute.lag : float
-        Time, in seconds, between the parachute ejection system is triggered
-        and the parachute is fully opened.
-    Parachute.noise : tuple, list
-        List in the format (mean, standard deviation, time-correlation).
-        The values are used to add noise to the pressure signal which is passed
-        to the trigger function. Default value is (0, 0, 0). Units are in Pa.
-    Parachute.noise_bias : float
-        Mean value of the noise added to the pressure signal, which is
-        passed to the trigger function. Unit is in Pa.
-    Parachute.noise_deviation : float
-        Standard deviation of the noise added to the pressure signal,
-        which is passed to the trigger function. Unit is in Pa.
-    Parachute.noise_corr : tuple, list
-        Tuple with the correlation between noise and time.
-    Parachute.noise_signal : list of tuple
-        List of (t, noise signal) corresponding to signal passed to
-        trigger function. Completed after running a simulation.
-    Parachute.noisy_pressure_signal : list of tuple
-        List of (t, noisy pressure signal) that is passed to the
-        trigger function. Completed after running a simulation.
-    Parachute.clean_pressure_signal : list of tuple
-        List of (t, clean pressure signal) corresponding to signal passed to
-        trigger function. Completed after running a simulation.
-    Parachute.noise_signal_function : Function
-        Function of noiseSignal.
-    Parachute.noisy_pressure_signal_function : Function
-        Function of noisy_pressure_signal.
-    Parachute.clean_pressure_signal_function : Function
-        Function of clean_pressure_signal.
-    Parachute.drag_coefficient : float
-        Drag coefficient of the inflated canopy shape, used only when
-        ``radius`` is not provided to estimate the parachute radius from
-        ``cd_s``: ``R = sqrt(cd_s / (drag_coefficient * pi))``. Typical
-        values: 1.4 for hemispherical canopies (default), 0.75 for flat
-        circular canopies, 1.5 for extended-skirt canopies.
-    Parachute.radius : float
-        Length of the non-unique semi-axis (radius) of the inflated hemispheroid
-        parachute in meters. If not provided at construction time, it is
-        estimated from ``cd_s`` and ``drag_coefficient``.
-    Parachute.height : float
-        Length of the unique semi-axis (height) of the inflated hemispheroid
-        parachute in meters.
-    Parachute.porosity : float
-        Geometric porosity of the canopy (ratio of open area to total canopy
-        area), in [0, 1]. Affects only the added-mass scaling during descent;
-        it does not change ``cd_s`` (drag). The default value of 0.0432 is
-        chosen so that the resulting ``added_mass_coefficient`` equals
-        approximately 1.0 ("neutral" added-mass behavior).
-    Parachute.added_mass_coefficient : float
-        Coefficient used to calculate the added-mass due to dragged air. It is
-        calculated from the porosity of the parachute.
-    """
-
-    def __init__(
-        self,
-        name,
-        cd_s,
-        trigger,
-        sampling_rate,
-        lag=0,
-        noise=(0, 0, 0),
-        radius=None,
-        height=None,
-        porosity=0.0432,
-        drag_coefficient=1.4,
-    ):
-        """Initializes Parachute class.
-
-        Parameters
-        ----------
-        name : string
-            Parachute name, such as drogue and main. Has no impact in
-            simulation, as it is only used to display data in a more
-            organized matter.
-        cd_s : float
-            Drag coefficient times reference area of the parachute.
-        trigger : callable, float, str
-            Defines the trigger condition for the parachute ejection system. It
-            can be one of the following:
-
-            - A callable function that takes three arguments: \
-
-                1. Freestream pressure in pascals.
-                2. Height in meters above ground level.
-                3. The state vector of the simulation, which is defined as: \
-
-                    .. code-block:: python
-
-                        u = [x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]
-
-                .. note::
-
-                    The function should return ``True`` if the parachute \
-                    ejection system should be triggered and ``False`` otherwise.
-            - A float value, representing an absolute height in meters. In this \
-                case, the parachute will be ejected when the rocket reaches this \
-                height above ground level.
-            - The string "apogee" which triggers the parachute at apogee, i.e., \
-                when the rocket reaches its highest point and starts descending.
-
-            .. note::
-
-                The function will be called according to the sampling rate specified.
-        sampling_rate : float
-            Sampling rate in which the parachute trigger will be checked at.
-            It is used to simulate the refresh rate of onboard sensors such
-            as barometers. Default value is 100. Value must be given in hertz.
-        lag : float, optional
-            Time between the parachute ejection system is triggered and the
-            parachute is fully opened. During this time, the simulation will
-            consider the rocket as flying without a parachute. Default value
-            is 0. Must be given in seconds.
-        noise : tuple, list, optional
-            List in the format (mean, standard deviation, time-correlation).
-            The values are used to add noise to the pressure signal which is
-            passed to the trigger function. Default value is ``(0, 0, 0)``.
-            Units are in Pa.
-        radius : float, optional
-            Length of the non-unique semi-axis (radius) of the inflated
-            hemispheroid parachute. If not provided, it is estimated from
-            ``cd_s`` and ``drag_coefficient`` using:
-            ``radius = sqrt(cd_s / (drag_coefficient * pi))``.
-            Units are in meters.
-        height : float, optional
-            Length of the unique semi-axis (height) of the inflated hemispheroid
-            parachute. Default value is the radius of the parachute.
-            Units are in meters.
-        porosity : float, optional
-            Geometric porosity of the canopy (ratio of open area to total
-            canopy area), in [0, 1]. Affects only the added-mass scaling
-            during descent; it does not change ``cd_s`` (drag). The default
-            value of 0.0432 is chosen so that the resulting
-            ``added_mass_coefficient`` equals approximately 1.0 ("neutral"
-            added-mass behavior).
-        drag_coefficient : float, optional
-            Drag coefficient of the inflated canopy shape, used only when
-            ``radius`` is not provided. It relates the aerodynamic ``cd_s``
-            to the physical canopy area via
-            ``cd_s = drag_coefficient * pi * radius**2``. Typical values:
-
-            - **1.4** — hemispherical canopy (default, NASA SP-8066)
-            - **0.75** — flat circular canopy
-            - **1.5** — extended-skirt canopy
-
-            Has no effect when ``radius`` is explicitly provided.
-        """
-
-        # Save arguments as attributes
-        self.name = name
-        self.cd_s = cd_s
-        self.trigger = trigger
-        self.sampling_rate = sampling_rate
-        self.lag = lag
-        self.noise = noise
-        self.drag_coefficient = drag_coefficient
-        self.porosity = porosity
-
-        # Initialize derived attributes
-        self.radius = self.__resolve_radius(radius, cd_s, drag_coefficient)
-        self.height = self.__resolve_height(height, self.radius)
-        self.added_mass_coefficient = self.__compute_added_mass_coefficient(
-            self.porosity
-        )
-        self.__init_noise(noise)
-        self.__evaluate_trigger_function(trigger)
-
-        # Prints and plots
-        self.prints = _ParachutePrints(self)
-
-    def __resolve_radius(self, radius, cd_s, drag_coefficient):
-        """Resolves parachute radius from input or aerodynamic relation."""
-        if radius is not None:
-            return radius
-
-        # cd_s = Cd * S = Cd * pi * R^2  =>  R = sqrt(cd_s / (Cd * pi))
-        return np.sqrt(cd_s / (drag_coefficient * np.pi))
-
-    def __resolve_height(self, height, radius):
-        """Resolves parachute height defaulting to radius when not provided."""
-        return height or radius
-
-    def __compute_added_mass_coefficient(self, porosity):
-        """Computes the added-mass coefficient from canopy porosity."""
-        return 1.068 * (
-            1 - 1.465 * porosity - 0.25975 * porosity**2 + 1.2626 * porosity**3
-        )
-
-    def __init_noise(self, noise):
-        """Initializes all noise-related attributes.
-
-        Parameters
-        ----------
-        noise : tuple, list
-            List in the format (mean, standard deviation, time-correlation).
-        """
-        self.noise_signal = [[-1e-6, np.random.normal(noise[0], noise[1])]]
-        self.noisy_pressure_signal = []
-        self.clean_pressure_signal = []
-        self.noise_bias = noise[0]
-        self.noise_deviation = noise[1]
-        self.noise_corr = (noise[2], (1 - noise[2] ** 2) ** 0.5)
-        self.clean_pressure_signal_function = Function(0)
-        self.noisy_pressure_signal_function = Function(0)
-        self.noise_signal_function = Function(0)
-        alpha, beta = self.noise_corr
-        self.noise_function = lambda: (
-            alpha * self.noise_signal[-1][1]
-            + beta * np.random.normal(noise[0], noise[1])
-        )
-
-    def __evaluate_trigger_function(self, trigger):
-        """This is used to set the triggerfunc attribute that will be used to
-        interact with the Flight class.
-        """
-        # pylint: disable=unused-argument, function-redefined
-
-        # Case 1: The parachute is deployed by a custom function
-        if callable(trigger):
-            # work around for having added sensors to parachute triggers
-            # to avoid breaking changes
-            triggerfunc = trigger
-            sig = signature(triggerfunc)
-            if len(sig.parameters) == 3:
-
-                def triggerfunc(p, h, y, sensors):
-                    return trigger(p, h, y)
-
-            self.triggerfunc = triggerfunc
-
-        # Case 2: The parachute is deployed at a given height
-        elif isinstance(trigger, (int, float)):
-            # The parachute is deployed at a given height
-            def triggerfunc(p, h, y, sensors):
-                # p = pressure considering parachute noise signal
-                # h = height above ground level considering parachute noise signal
-                # y = [x, y, z, vx, vy, vz, e0, e1, e2, e3, w1, w2, w3]
-                return y[5] < 0 and h < trigger
-
-            self.triggerfunc = triggerfunc
-
-        # Case 3: The parachute is deployed at apogee
-        elif trigger.lower() == "apogee":
-            # The parachute is deployed at apogee
-            def triggerfunc(p, h, y, sensors):
-                # p = pressure considering parachute noise signal
-                # h = height above ground level considering parachute noise signal
-                # y = [x, y, z, vx, vy, vz, e0, e1, e2, e3, w1, w2, w3]
-                return y[5] < 0
-
-            self.triggerfunc = triggerfunc
-
-        # Case 4: Invalid trigger input
-        else:
-            raise ValueError(
-                f"Unable to set the trigger function for parachute '{self.name}'. "
-                + "Trigger must be a callable, a float value or the string 'apogee'. "
-                + "See the Parachute class documentation for more information."
-            )
-
-    def __str__(self):
-        """Returns a string representation of the Parachute class.
-
-        Returns
-        -------
-        string
-            String representation of Parachute class. It is human readable.
-        """
-        return f"Parachute {self.name.title()} with a cd_s of {self.cd_s:.4f} m2"
-
-    def __repr__(self):
-        """Representation method for the class, useful when debugging."""
-        return (
-            f""
-        )
-
-    def info(self):
-        """Prints information about the Parachute class."""
-        self.prints.all()
-
-    def all_info(self):
-        """Prints all information about the Parachute class."""
-        self.info()
-        # self.plots.all() # TODO: Parachutes still doesn't have plots
-
-    def to_dict(self, **kwargs):
-        allow_pickle = kwargs.get("allow_pickle", True)
-        trigger = self.trigger
-
-        if callable(self.trigger) and not isinstance(self.trigger, Function):
-            if allow_pickle:
-                trigger = to_hex_encode(trigger)
-            else:
-                trigger = trigger.__name__
-
-        data = {
-            "name": self.name,
-            "cd_s": self.cd_s,
-            "trigger": trigger,
-            "sampling_rate": self.sampling_rate,
-            "lag": self.lag,
-            "noise": self.noise,
-            "radius": self.radius,
-            "drag_coefficient": self.drag_coefficient,
-            "height": self.height,
-            "porosity": self.porosity,
-        }
-
-        if kwargs.get("include_outputs", False):
-            data["noise_signal"] = self.noise_signal
-            data["noise_function"] = (
-                to_hex_encode(self.noise_function)
-                if allow_pickle
-                else self.noise_function.__name__
-            )
-            data["noisy_pressure_signal"] = self.noisy_pressure_signal
-            data["clean_pressure_signal"] = self.clean_pressure_signal
-
-        return data
-
-    @classmethod
-    def from_dict(cls, data):
-        trigger = data["trigger"]
-
-        try:
-            trigger = from_hex_decode(trigger)
-        except (TypeError, ValueError):
-            pass
-
-        parachute = cls(
-            name=data["name"],
-            cd_s=data["cd_s"],
-            trigger=trigger,
-            sampling_rate=data["sampling_rate"],
-            lag=data["lag"],
-            noise=data["noise"],
-            radius=data.get("radius", None),
-            drag_coefficient=data.get("drag_coefficient", 1.4),
-            height=data.get("height", None),
-            porosity=data.get("porosity", 0.0432),
-        )
-
-        return parachute
+__all__ = ["Parachute", "HemisphericalParachute"]
diff --git a/rocketpy/rocket/parachutes/__init__.py b/rocketpy/rocket/parachutes/__init__.py
new file mode 100644
index 000000000..410d54686
--- /dev/null
+++ b/rocketpy/rocket/parachutes/__init__.py
@@ -0,0 +1,2 @@
+from .hemispherical_parachute import HemisphericalParachute
+from .parachute import Parachute
diff --git a/rocketpy/rocket/parachutes/hemispherical_parachute.py b/rocketpy/rocket/parachutes/hemispherical_parachute.py
new file mode 100644
index 000000000..25fe33dba
--- /dev/null
+++ b/rocketpy/rocket/parachutes/hemispherical_parachute.py
@@ -0,0 +1,399 @@
+import numpy as np
+
+from .parachute import Parachute
+
+
+class HemisphericalParachute(Parachute):
+    """Implements a hemispherical parachute.
+
+    Attributes
+    ----------
+    HemisphericalParachute.name : string
+        Parachute name, such as drogue and main. Has no impact in
+        simulation, as it is only used to display data in a more
+        organized matter.
+    HemisphericalParachute.parachute_type : string
+        Parachute type, such as hemispherical and parafoil.
+    HemisphericalParachute.cd_s : float
+        Drag coefficient times reference area for parachute. It has units of
+        area and must be given in squared meters.
+    HemisphericalParachute.trigger : callable, float, str
+        This parameter defines the trigger condition for the parachute ejection
+        system. It can be one of the following:
+
+        - A callable function that takes four arguments:
+          1. Freestream pressure in pascals.
+          2. Height in meters above ground level.
+          3. The state vector of the simulation, which is defined as:
+
+             `[x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]`.
+
+          4. A list of sensors that are attached to the rocket. The most recent
+             measurements of the sensors are provided with the
+             ``sensor.measurement`` attribute. The sensors are listed in the same
+             order as they are added to the rocket.
+
+          The function should return ``True`` if the parachute ejection system
+          should be triggered and False otherwise. The function will be called
+          according to the specified sampling rate.
+
+        - A float value, representing an absolute height in meters. In this
+          case, the parachute will be ejected when the rocket reaches this height
+          above ground level.
+
+        - The string "apogee" which triggers the parachute at apogee, i.e.,
+          when the rocket reaches its highest point and starts descending.
+
+
+    HemisphericalParachute.triggerfunc : function
+        Trigger function created from the trigger used to evaluate the trigger
+        condition for the parachute ejection system. It is a callable function
+        that takes three arguments: Freestream pressure in Pa, Height above
+        ground level in meters, and the state vector of the simulation. The
+        returns ``True`` if the parachute ejection system should be triggered
+        and ``False`` otherwise.
+
+        .. note:
+
+            The function will be called according to the sampling rate specified.
+
+    HemisphericalParachute.sampling_rate : float
+        Sampling rate, in Hz, for the trigger function.
+    HemisphericalParachute.lag : float
+        Time, in seconds, between the parachute ejection system is triggered
+        and the parachute is fully opened.
+    HemisphericalParachute.noise : tuple, list
+        List in the format (mean, standard deviation, time-correlation).
+        The values are used to add noise to the pressure signal which is passed
+        to the trigger function. Default value is (0, 0, 0). Units are in Pa.
+    HemisphericalParachute.noise_bias : float
+        Mean value of the noise added to the pressure signal, which is
+        passed to the trigger function. Unit is in Pa.
+    HemisphericalParachute.noise_deviation : float
+        Standard deviation of the noise added to the pressure signal,
+        which is passed to the trigger function. Unit is in Pa.
+    HemisphericalParachute.noise_corr : tuple, list
+        Tuple with the correlation between noise and time.
+    HemisphericalParachute.noise_signal : list of tuple
+        List of (t, noise signal) corresponding to signal passed to
+        trigger function. Completed after running a simulation.
+    HemisphericalParachute.noisy_pressure_signal : list of tuple
+        List of (t, noisy pressure signal) that is passed to the
+        trigger function. Completed after running a simulation.
+    HemisphericalParachute.clean_pressure_signal : list of tuple
+        List of (t, clean pressure signal) corresponding to signal passed to
+        trigger function. Completed after running a simulation.
+    HemisphericalParachute.noise_signal_function : Function
+        Function of noiseSignal.
+    HemisphericalParachute.noisy_pressure_signal_function : Function
+        Function of noisy_pressure_signal.
+    HemisphericalParachute.clean_pressure_signal_function : Function
+        Function of clean_pressure_signal.
+    HemisphericalParachute.drag_coefficient : float
+        Drag coefficient of the inflated canopy shape, used only when
+        ``radius`` is not provided to estimate the parachute radius from
+        ``cd_s``: ``R = sqrt(cd_s / (drag_coefficient * pi))``. Typical
+        values: 1.4 for hemispherical canopies (default), 0.75 for flat
+        circular canopies, 1.5 for extended-skirt canopies.
+    HemisphericalParachute.radius : float
+        Length of the non-unique semi-axis (radius) of the inflated hemispherical
+        parachute in meters. If not provided at construction time, it is
+        estimated from ``cd_s`` and ``drag_coefficient``.
+    HemisphericalParachute.height : float
+        Length of the unique semi-axis (height) of the inflated hemispherical
+        parachute in meters.
+    HemisphericalParachute.porosity : float
+        Geometric porosity of the canopy (ratio of open area to total canopy
+        area), in [0, 1]. Affects only the added-mass scaling during descent;
+        it does not change ``cd_s`` (drag). The default value of 0.0432 is
+        chosen so that the resulting ``added_mass_coefficient`` equals
+        approximately 1.0 ("neutral" added-mass behavior).
+    HemisphericalParachute.added_mass_coefficient : float
+        Coefficient used to calculate the added-mass due to dragged air. It is
+        calculated from the porosity of the parachute.
+    """
+
+    def __init__(
+        self,
+        name,
+        cd_s,
+        trigger,
+        sampling_rate,
+        lag=0,
+        noise=(0, 0, 0),
+        radius=None,
+        height=None,
+        porosity=0.0432,
+        drag_coefficient=1.4,
+    ):
+        """Initializes Parachute class.
+
+        Parameters
+        ----------
+        name : string
+            Parachute name, such as drogue and main. Has no impact in
+            simulation, as it is only used to display data in a more
+            organized matter.
+        cd_s : float
+            Drag coefficient times reference area of the parachute.
+        trigger : callable, float, str
+            Defines the trigger condition for the parachute ejection system. It
+            can be one of the following:
+
+            - A callable function that takes three arguments: \
+
+                1. Freestream pressure in pascals.
+                2. Height in meters above ground level.
+                3. The state vector of the simulation, which is defined as: \
+
+                    .. code-block:: python
+
+                        u = [x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]
+
+                .. note::
+
+                    The function should return ``True`` if the parachute \
+                    ejection system should be triggered and ``False`` otherwise.
+            - A float value, representing an absolute height in meters. In this \
+                case, the parachute will be ejected when the rocket reaches this \
+                height above ground level.
+            - The string "apogee" which triggers the parachute at apogee, i.e., \
+                when the rocket reaches its highest point and starts descending.
+
+            .. note::
+
+                The function will be called according to the sampling rate specified.
+        sampling_rate : float
+            Sampling rate in which the parachute trigger will be checked at.
+            It is used to simulate the refresh rate of onboard sensors such
+            as barometers. Default value is 100. Value must be given in hertz.
+        lag : float, optional
+            Time between the parachute ejection system is triggered and the
+            parachute is fully opened. During this time, the simulation will
+            consider the rocket as flying without a parachute. Default value
+            is 0. Must be given in seconds.
+        noise : tuple, list, optional
+            List in the format (mean, standard deviation, time-correlation).
+            The values are used to add noise to the pressure signal which is
+            passed to the trigger function. Default value is ``(0, 0, 0)``.
+            Units are in Pa.
+        radius : float, optional
+            Length of the non-unique semi-axis (radius) of the inflated
+            hemispherical parachute. If not provided, it is estimated from
+            ``cd_s`` and ``drag_coefficient`` using:
+            ``radius = sqrt(cd_s / (drag_coefficient * pi))``.
+            Units are in meters.
+        height : float, optional
+            Length of the unique semi-axis (height) of the inflated hemispherical
+            parachute. Default value is the radius of the parachute.
+            Units are in meters.
+        porosity : float, optional
+            Geometric porosity of the canopy (ratio of open area to total
+            canopy area), in [0, 1]. Affects only the added-mass scaling
+            during descent; it does not change ``cd_s`` (drag). The default
+            value of 0.0432 is chosen so that the resulting
+            ``added_mass_coefficient`` equals approximately 1.0 ("neutral"
+            added-mass behavior).
+        drag_coefficient : float, optional
+            Drag coefficient of the inflated canopy shape, used only when
+            ``radius`` is not provided. It relates the aerodynamic ``cd_s``
+            to the physical canopy area via
+            ``cd_s = drag_coefficient * pi * radius**2``. Typical values:
+
+            - **1.4** — hemispherical canopy (default, NASA SP-8066)
+            - **0.75** — flat circular canopy
+            - **1.5** — extended-skirt canopy
+
+            Has no effect when ``radius`` is explicitly provided.
+        """
+
+        parachute_type = "hemispherical"
+        super().__init__(
+            name=name,
+            parachute_type=parachute_type,
+            trigger=trigger,
+            sampling_rate=sampling_rate,
+            lag=lag,
+            noise=noise,
+        )
+        self.cd_s = cd_s
+        self.trigger = trigger
+        self.drag_coefficient = drag_coefficient
+        self.porosity = porosity
+
+        # Initialize derived attributes
+        self.radius = self.__resolve_radius(radius, cd_s, drag_coefficient)
+        self.height = self.__resolve_height(height, self.radius)
+        self.added_mass_coefficient = self.__compute_added_mass_coefficient(
+            self.porosity
+        )
+
+    def __resolve_radius(self, radius, cd_s, drag_coefficient):
+        """Resolves parachute radius from input or aerodynamic relation."""
+        if radius is not None:
+            return radius
+
+        # cd_s = Cd * S = Cd * pi * R^2  =>  R = sqrt(cd_s / (Cd * pi))
+        return np.sqrt(cd_s / (drag_coefficient * np.pi))
+
+    def __resolve_height(self, height, radius):
+        """Resolves parachute height defaulting to radius when not provided."""
+        return height or radius
+
+    def __compute_added_mass_coefficient(self, porosity):
+        """Computes the added-mass coefficient from canopy porosity."""
+        return 1.068 * (
+            1 - 1.465 * porosity - 0.25975 * porosity**2 + 1.2626 * porosity**3
+        )
+
+    def add_information_to_flight(self, flight_obj, additional_info):
+        """Adds parachute information to flight"""
+        drag = additional_info["drag"]
+        t = additional_info["t"]
+        if self.name not in flight_obj.parachutes_info.keys():
+            flight_obj.parachutes_info[self.name] = {"drag": [], "t": []}
+            flight_obj.parachutes_info[self.name]["drag"].append(drag)
+            flight_obj.parachutes_info[self.name]["t"].append(t)
+        else:
+            # LSODA did not accept last solution, we replace it
+            if t == flight_obj.parachutes_info[self.name]["t"][-1]:
+                flight_obj.parachutes_info[self.name]["drag"][-1] = drag
+                flight_obj.parachutes_info[self.name]["t"][-1] = t
+            else:
+                flight_obj.parachutes_info[self.name]["drag"].append(drag)
+                flight_obj.parachutes_info[self.name]["t"].append(t)
+
+    # pylint: disable=too-many-locals, too-many-statements
+    def u_dot(self, t, u, flight_information, post_processing=False):
+        """Calculates derivative of u state vector with respect to time
+        when rocket is flying under parachute. Each parachute type has
+
+
+        Parameters
+        ----------
+        t : float
+            Time in seconds
+        u : list
+            State vector defined by u = [x, y, z, vx, vy, vz, e0, e1,
+            e2, e3, omega1, omega2, omega3].
+        flight_information : dictionary
+            A dictionary containing additional information used in
+            the parachute equations of motion. Examples are
+            Environment and Rocket data
+        post_processing : bool, optional
+            If True, adds flight data information directly to self
+            variables such as self.angle_of_attack. Default is False.
+
+        Return
+        ------
+        u_dot : dict
+            A dictionary containing two or three keys
+            1) state: State vector which depends on the parachute model.
+            2) additional_information: information as dict that is added
+            to the  'parachutes_info' attribute in the Flight class.
+            3) post_processing_information: State vector containing
+            post processing information.
+
+        """
+        # Get relevant state data
+        z, vx, vy, vz = u[2:6]
+
+        env = flight_information["env"]
+        rocket = flight_information["rocket"]
+
+        # Get atmospheric data
+        rho = env.density.get_value_opt(z)
+        wind_velocity_x = env.wind_velocity_x.get_value_opt(z)
+        wind_velocity_y = env.wind_velocity_y.get_value_opt(z)
+
+        # Get the mass of the rocket
+        mp = rocket.dry_mass
+
+        # Calculate added mass
+        ma = (
+            self.added_mass_coefficient
+            * rho
+            * (2 / 3)
+            * np.pi
+            * self.radius**2
+            * self.height
+        )
+
+        # Calculate freestream speed
+        freestream_x = vx - wind_velocity_x
+        freestream_y = vy - wind_velocity_y
+        freestream_z = vz
+        free_stream_speed = (freestream_x**2 + freestream_y**2 + freestream_z**2) ** 0.5
+
+        # Determine drag force
+        pseudo_drag = -0.5 * rho * self.cd_s * free_stream_speed
+        Dx = pseudo_drag * freestream_x
+        Dy = pseudo_drag * freestream_y
+        Dz = pseudo_drag * freestream_z
+        total_drag = np.sqrt(Dx**2 + Dy**2 + Dz**2)
+        ax = Dx / (mp + ma)
+        ay = Dy / (mp + ma)
+        az = (Dz - mp * env.gravity.get_value_opt(z)) / (mp + ma)
+
+        # Add coriolis acceleration
+        _, w_earth_y, w_earth_z = env.earth_rotation_vector
+        ax -= 2 * (vz * w_earth_y - vy * w_earth_z)
+        ay -= 2 * (vx * w_earth_z)
+        az -= 2 * (-vx * w_earth_y)
+
+        additional_info = {
+            "t": t,
+            "drag": total_drag,
+        }
+        output = {
+            "state": [vx, vy, vz, ax, ay, az, 0, 0, 0, 0, 0, 0, 0],
+            "additional_info": additional_info,
+        }
+
+        if post_processing:
+            output["post_processing_information"] = [
+                t,
+                ax,
+                ay,
+                az,
+                0,
+                0,
+                0,
+                Dx,
+                Dy,
+                Dz,
+                0,
+                0,
+                0,
+                0,
+            ]
+        return output
+
+    # serialization methods
+    def to_dict(self, **kwargs):
+        data = super().to_dict(**kwargs)
+        data.update(
+            {
+                "cd_s": self.cd_s,
+                "radius": self.radius,
+                "drag_coefficient": self.drag_coefficient,
+                "height": self.height,
+                "porosity": self.porosity,
+            }
+        )
+        return data
+
+    @classmethod
+    def from_dict(cls, data):
+        return cls(
+            name=data["name"],
+            cd_s=data["cd_s"],
+            trigger=cls._decode_trigger(data["trigger"]),
+            sampling_rate=data["sampling_rate"],
+            lag=data["lag"],
+            noise=data["noise"],
+            radius=data.get("radius", None),
+            drag_coefficient=data.get("drag_coefficient", 1.4),
+            height=data.get("height", None),
+            porosity=data.get("porosity", 0.0432),
+        )
diff --git a/rocketpy/rocket/parachutes/parachute.py b/rocketpy/rocket/parachutes/parachute.py
new file mode 100644
index 000000000..a9b2c290d
--- /dev/null
+++ b/rocketpy/rocket/parachutes/parachute.py
@@ -0,0 +1,412 @@
+from abc import ABC, abstractmethod
+from inspect import signature
+
+import numpy as np
+
+from rocketpy.tools import from_hex_decode, to_hex_encode
+
+from ...mathutils.function import Function
+from ...prints.parachute_prints import _ParachutePrints
+
+
+class Parachute(ABC):
+    """Abstract class to specify characteristics and useful operations for
+    parachutes. Cannot be instantiated.
+
+    Attributes
+    ----------
+    Parachute.name : string
+        Parachute name, such as drogue and main. Has no impact in
+        simulation, as it is only used to display data in a more
+        organized matter.
+    Parachute.parachute_type : string
+        Parachute type, such as hemispherical and parafoil.
+    Parachute.trigger : callable, float, str
+        This parameter defines the trigger condition for the parachute ejection
+        system. It can be one of the following:
+
+        - A callable function that can take 3, 4, or 5 arguments:
+
+          **3 arguments**:
+            1. Freestream pressure in pascals.
+            2. Height in meters above ground level.
+            3. The state vector: ``[x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]``
+
+          **4 arguments** (sensors OR acceleration):
+            1. Freestream pressure in pascals.
+            2. Height in meters above ground level.
+            3. The state vector.
+            4. Either:
+               - ``sensors``: List of sensor objects attached to the rocket, OR
+               - ``u_dot``: State derivative including accelerations at indices [3:6]
+
+          **5 arguments** (sensors AND acceleration):
+            1. Freestream pressure in pascals.
+            2. Height in meters above ground level.
+            3. The state vector.
+            4. ``sensors``: List of sensor objects.
+            5. ``u_dot``: State derivative with accelerations ``[vx, vy, vz, ax, ay, az, ...]``
+
+          The function should return ``True`` to trigger deployment, ``False`` otherwise.
+          The function will be called according to the specified sampling rate.
+
+        - A float value, representing an absolute height in meters. In this
+          case, the parachute will be ejected when the rocket reaches this height
+          above ground level while descending.
+
+        - The string "apogee" which triggers the parachute at apogee, i.e.,
+          when the rocket reaches its highest point and starts descending.
+
+
+    Parachute.triggerfunc : function
+        Trigger function created from the trigger used to evaluate the trigger
+        condition for the parachute ejection system. It is a callable function
+        that takes five arguments: Freestream pressure in Pa, Height above
+        ground level in meters, the state vector, sensors list, and u_dot.
+        Returns ``True`` if the parachute ejection system should be triggered
+        and ``False`` otherwise.
+
+        .. note::
+
+            The function will be called according to the sampling rate specified.
+
+    Parachute.sampling_rate : float
+        Sampling rate, in Hz, for the trigger function.
+    Parachute.lag : float
+        Time, in seconds, between the parachute ejection system is triggered
+        and the parachute is fully opened.
+    Parachute.noise : tuple, list
+        List in the format (mean, standard deviation, time-correlation).
+        The values are used to add noise to the pressure signal which is passed
+        to the trigger function. Default value is (0, 0, 0). Units are in Pa.
+    Parachute.noise_bias : float
+        Mean value of the noise added to the pressure signal, which is
+        passed to the trigger function. Unit is in Pa.
+    Parachute.noise_deviation : float
+        Standard deviation of the noise added to the pressure signal,
+        which is passed to the trigger function. Unit is in Pa.
+    Parachute.noise_corr : tuple, list
+        Tuple with the correlation between noise and time.
+    Parachute.noise_signal : list of tuple
+        List of (t, noise signal) corresponding to signal passed to
+        trigger function. Completed after running a simulation.
+    Parachute.noisy_pressure_signal : list of tuple
+        List of (t, noisy pressure signal) that is passed to the
+        trigger function. Completed after running a simulation.
+    Parachute.clean_pressure_signal : list of tuple
+        List of (t, clean pressure signal) corresponding to signal passed to
+        trigger function. Completed after running a simulation.
+    Parachute.noise_signal_function : Function
+        Function of noiseSignal.
+    Parachute.noisy_pressure_signal_function : Function
+        Function of noisy_pressure_signal.
+    Parachute.clean_pressure_signal_function : Function
+        Function of clean_pressure_signal.
+    """
+
+    def __init__(
+        self,
+        name,
+        parachute_type,
+        trigger,
+        sampling_rate,
+        lag=0,
+        noise=(0, 0, 0),
+    ):
+        """Initializes Parachute class.
+
+        Parameters
+        ----------
+        name : string
+            Parachute name, such as drogue and main. Has no impact in
+            simulation, as it is only used to display data in a more
+            organized matter.
+        parachute_type : string
+            Parachute type, such as hemispherical and parafoil.
+        trigger : callable, float, str
+            Defines the trigger condition for the parachute ejection system. It
+            can be one of the following:
+
+            - A callable function that takes three or four arguments: \
+
+                1. Freestream pressure in pascals.
+                2. Height in meters above ground level.
+                3. The state vector of the simulation, which is defined as: \
+
+                    .. code-block:: python
+
+                        u = [x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]
+
+                4. (optional) A list of sensors attached to the rocket.
+
+                .. note::
+
+                    The function should return ``True`` if the parachute \
+                    ejection system should be triggered and ``False`` otherwise.
+            - A float value, representing an absolute height in meters. In this \
+                case, the parachute will be ejected when the rocket reaches this \
+                height above ground level.
+            - The string "apogee" which triggers the parachute at apogee, i.e., \
+                when the rocket reaches its highest point and starts descending.
+
+            .. note::
+
+                The function will be called according to the sampling rate specified.
+        sampling_rate : float
+            Sampling rate in which the parachute trigger will be checked at.
+            It is used to simulate the refresh rate of onboard sensors such
+            as barometers. Default value is 100. Value must be given in hertz.
+        lag : float, optional
+            Time between the parachute ejection system is triggered and the
+            parachute is fully opened. During this time, the simulation will
+            consider the rocket as flying without a parachute. Default value
+            is 0. Must be given in seconds.
+        noise : tuple, list, optional
+            List in the format (mean, standard deviation, time-correlation).
+            The values are used to add noise to the pressure signal which is
+            passed to the trigger function. Default value is ``(0, 0, 0)``.
+            Units are in Pa.
+        """
+
+        # Save arguments as attributes
+        self.name = name
+        self.parachute_type = parachute_type
+        self.trigger = trigger
+        self.sampling_rate = sampling_rate
+        self.lag = lag
+        self.noise = noise
+        self.__init_noise(noise)
+        self.__evaluate_trigger_function(trigger)
+
+        # Prints and plots
+        self.prints = _ParachutePrints(self)
+
+    def __init_noise(self, noise):
+        """Initializes all noise-related attributes.
+
+        Parameters
+        ----------
+        noise : tuple, list
+            List in the format (mean, standard deviation, time-correlation).
+        """
+        self.noise_signal = [[-1e-6, np.random.normal(noise[0], noise[1])]]
+        self.noisy_pressure_signal = []
+        self.clean_pressure_signal = []
+        self.noise_bias = noise[0]
+        self.noise_deviation = noise[1]
+        self.noise_corr = (noise[2], (1 - noise[2] ** 2) ** 0.5)
+        self.clean_pressure_signal_function = Function(0)
+        self.noisy_pressure_signal_function = Function(0)
+        self.noise_signal_function = Function(0)
+        alpha, beta = self.noise_corr
+        self.noise_function = lambda: (
+            alpha * self.noise_signal[-1][1]
+            + beta * np.random.normal(noise[0], noise[1])
+        )
+
+    def __evaluate_trigger_function(self, trigger):  # pylint: disable=too-many-statements
+        """This is used to set the triggerfunc attribute that will be used to
+        interact with the Flight class.
+
+        Notes
+        -----
+        The resulting triggerfunc always has signature (p, h, y, sensors, u_dot)
+        so Flight can pass both sensors and u_dot when needed.
+        """
+        # pylint: disable=unused-argument, function-redefined
+
+        # Helper to wrap any callable to the internal (p, h, y, sensors, u_dot) API
+        def _make_wrapper(fn):
+            params = list(signature(fn).parameters.keys())
+            num_params = len(params)
+            fn_name = getattr(fn, "__name__", repr(fn))
+
+            # Validate arity up-front so a malformed trigger fails at
+            # construction time rather than mid-simulation.
+            if num_params < 3:
+                raise TypeError(
+                    f"Trigger function '{fn_name}' has unsupported signature: "
+                    f"expected 3, 4, or 5+ arguments, got {num_params}. "
+                    "Please check the function definition."
+                )
+
+            # A 4-argument trigger is ambiguous: the 4th argument may be either
+            # the sensors list or the acceleration (u_dot). Disambiguate by the
+            # parameter name. A 5+ argument trigger follows the positional
+            # contract (p, h, y, sensors, u_dot), so it always receives u_dot.
+            fourth_is_udot = num_params == 4 and params[3].lower() in (
+                "u_dot",
+                "udot",
+                "acc",
+                "acceleration",
+            )
+
+            # Tell Flight whether it must compute u_dot for this trigger. Gate on
+            # ARITY (not parameter names) for 5+ arg triggers so documented,
+            # positionally-correct triggers with descriptive parameter names
+            # still receive a valid u_dot instead of None.
+            expects_udot = num_params >= 5 or fourth_is_udot
+
+            def wrapper(p, h, y, sensors, u_dot):
+                if num_params == 3:
+                    return fn(p, h, y)
+                if num_params == 4:
+                    if fourth_is_udot:
+                        return fn(p, h, y, u_dot)
+                    return fn(p, h, y, sensors)
+                # num_params >= 5: positional contract (p, h, y, sensors, u_dot)
+                return fn(p, h, y, sensors, u_dot)
+
+            # attach metadata so Flight can decide whether to compute u_dot
+            wrapper._expects_udot = expects_udot
+            return wrapper
+
+        # Callable provided by user
+        if callable(trigger):
+            self.triggerfunc = _make_wrapper(trigger)
+            return
+
+        # Numeric altitude trigger
+        if isinstance(trigger, (int, float)):
+
+            def triggerfunc(p, h, y, sensors, u_dot):  # pylint: disable=unused-argument
+                # p = pressure considering parachute noise signal
+                # h = height above ground level considering parachute noise signal
+                # y = [x, y, z, vx, vy, vz, e0, e1, e2, e3, w1, w2, w3]
+                return y[5] < 0 and h < trigger
+
+            triggerfunc._expects_udot = False
+            self.triggerfunc = triggerfunc
+            return
+
+        # Special case: "apogee"
+        if isinstance(trigger, str) and trigger.lower() == "apogee":
+
+            def triggerfunc(p, h, y, sensors, u_dot):  # pylint: disable=unused-argument
+                return y[5] < 0
+
+            triggerfunc._expects_udot = False
+            self.triggerfunc = triggerfunc
+            return
+
+        # If we reach this point, the trigger is invalid
+        raise ValueError(
+            f"Unable to set the trigger function for parachute '{self.name}'. "
+            + "Trigger must be a callable, a float value or one of the strings "
+            + "('apogee'). "
+            + "See the Parachute class documentation for more information."
+        )
+
+    def __str__(self):
+        """Returns a string representation of the Parachute class.
+
+        Returns
+        -------
+        string
+            String representation of Parachute class. It is human readable.
+        """
+        return f"Parachute {self.name.title()} of type {self.parachute_type}"
+
+    def __repr__(self):
+        """Representation method for the class, useful when debugging."""
+        return (
+            f""
+        )
+
+    def info(self):
+        """Prints information about the Parachute class."""
+        self.prints.all()
+
+    def all_info(self):
+        """Prints all information about the Parachute class."""
+        self.info()
+
+    @abstractmethod
+    def add_information_to_flight(self, flight_obj, additional_info):
+        """Adds parachute information to flight"""
+
+    @abstractmethod
+    def u_dot(self, t, u, flight_information, post_processing=False):
+        """Calculates derivative of u state vector with respect to time
+        when rocket is flying under parachute. Each parachute type has
+
+
+        Parameters
+        ----------
+        t : float
+            Time in seconds
+        u : list
+            State vector defined by u = [x, y, z, vx, vy, vz, e0, e1,
+            e2, e3, omega1, omega2, omega3].
+        flight_information : dictionary
+            A dictionary containing additional information used in
+            the parachute equations of motion. Examples are
+            Environment and Rocket data
+        post_processing : bool, optional
+            If True, adds flight data information directly to self
+            variables such as self.angle_of_attack. Default is False.
+
+        Return
+        ------
+        u_dot : dict
+            A dictionary containing two or three keys
+            1) state: State vector which depends on the parachute model.
+            2) additional_information: information as dict that is added
+            to the  'parachutes_info' attribute in the Flight class.
+            3) post_processing_information: State vector containing
+            post processing information.
+
+        """
+
+    def to_dict(self, **kwargs):
+        """Serializes the fields shared by every parachute model. Subclasses
+        should call ``super().to_dict(**kwargs)`` and add their model-specific
+        attributes to the returned dictionary."""
+        allow_pickle = kwargs.get("allow_pickle", True)
+        trigger = self.trigger
+
+        if callable(self.trigger) and not isinstance(self.trigger, Function):
+            if allow_pickle:
+                trigger = to_hex_encode(trigger)
+            else:
+                trigger = trigger.__name__
+
+        data = {
+            "name": self.name,
+            "parachute_type": self.parachute_type,
+            "trigger": trigger,
+            "sampling_rate": self.sampling_rate,
+            "lag": self.lag,
+            "noise": self.noise,
+        }
+
+        if kwargs.get("include_outputs", False):
+            data["noise_signal"] = self.noise_signal
+            data["noise_function"] = (
+                to_hex_encode(self.noise_function)
+                if allow_pickle
+                else self.noise_function.__name__
+            )
+            data["noisy_pressure_signal"] = self.noisy_pressure_signal
+            data["clean_pressure_signal"] = self.clean_pressure_signal
+
+        return data
+
+    @staticmethod
+    def _decode_trigger(trigger):
+        """Decodes a (possibly hex-encoded) serialized trigger back into a
+        callable, leaving numeric/string triggers untouched."""
+        try:
+            return from_hex_decode(trigger)
+        except (TypeError, ValueError):
+            return trigger
+
+    @classmethod
+    @abstractmethod
+    def from_dict(cls, data):
+        """Reconstructs a parachute from a serialized dictionary.
+
+        Each concrete model must implement this using its own constructor,
+        since the required arguments differ per model. The shared
+        ``_decode_trigger`` helper handles the ``trigger`` field."""
diff --git a/rocketpy/rocket/rocket.py b/rocketpy/rocket/rocket.py
index e3692d2e8..2ed7fce47 100644
--- a/rocketpy/rocket/rocket.py
+++ b/rocketpy/rocket/rocket.py
@@ -1,12 +1,20 @@
 import csv
 import inspect
+import logging
 import math
+import numbers
 import warnings
 from typing import Iterable
+from warnings import warn
 
 import numpy as np
 
 from rocketpy.control.controller import _Controller
+from rocketpy.exceptions import (
+    InvalidInertiaError,
+    InvalidParameterError,
+    UnstableRocketWarning,
+)
 from rocketpy.mathutils.function import Function
 from rocketpy.mathutils.vector_matrix import Matrix, Vector
 from rocketpy.motors.empty_motor import EmptyMotor
@@ -21,16 +29,22 @@
     Tail,
     TrapezoidalFins,
 )
+from rocketpy.rocket.aero_surface.fins.elliptical_fin import EllipticalFin
+from rocketpy.rocket.aero_surface.fins.free_form_fin import FreeFormFin
 from rocketpy.rocket.aero_surface.fins.free_form_fins import FreeFormFins
+from rocketpy.rocket.aero_surface.fins.trapezoidal_fin import TrapezoidalFin
 from rocketpy.rocket.aero_surface.generic_surface import GenericSurface
 from rocketpy.rocket.components import Components
-from rocketpy.rocket.parachute import Parachute
+from rocketpy.rocket.parachutes.hemispherical_parachute import HemisphericalParachute
+from rocketpy.rocket.parachutes.parachute import Parachute
 from rocketpy.tools import (
     deprecated,
     find_obj_from_hash,
     parallel_axis_theorem_from_com,
 )
 
+logger = logging.getLogger(__name__)
+
 
 # pylint: disable=too-many-instance-attributes, too-many-public-methods, too-many-instance-attributes
 class Rocket:
@@ -308,6 +322,29 @@ def __init__(  # pylint: disable=too-many-statements
                     + '"tail_to_nose" and "nose_to_tail".'
                 )
 
+        # Validate inputs. Accept Python and NumPy numeric scalars for
+        # radius/mass, and any length-3 or length-6 sequence (tuple, list or
+        # numpy array) for inertia, matching the permissive behavior of earlier
+        # versions (numpy inputs are common when computing inertia tensors).
+        if not isinstance(radius, numbers.Real) or radius <= 0:
+            raise InvalidParameterError(
+                f"Rocket radius must be a positive number, got {radius!r}."
+            )
+        if not isinstance(mass, numbers.Real) or mass <= 0:
+            raise InvalidParameterError(
+                f"Rocket mass must be a positive number, got {mass!r}."
+            )
+        try:
+            inertia_length = len(inertia)
+        except TypeError:
+            inertia_length = None
+        if isinstance(inertia, str) or inertia_length not in (3, 6):
+            raise InvalidInertiaError(
+                "Inertia must be a length-3 (I_11, I_22, I_33) or length-6 "
+                "(I_11, I_22, I_33, I_12, I_13, I_23) sequence, "
+                f"got {inertia!r}."
+            )
+
         # Define rocket inertia attributes in SI units
         self.mass = mass
         inertia = (*inertia, 0, 0, 0) if len(inertia) == 3 else inertia
@@ -475,7 +512,7 @@ def evaluate_total_mass(self):
         """
         # Make sure there is a motor associated with the rocket
         if self.motor is None:
-            print("Please associate this rocket with a motor!")
+            logger.warning("Please associate this rocket with a motor!")
             return False
 
         self.total_mass = self.mass + self.motor.total_mass
@@ -495,7 +532,7 @@ def evaluate_dry_mass(self):
         """
         # Make sure there is a motor associated with the rocket
         if self.motor is None:
-            print("Please associate this rocket with a motor!")
+            logger.warning("Please associate this rocket with a motor!")
             return False
 
         self.dry_mass = self.mass + self.motor.dry_mass
@@ -578,7 +615,7 @@ def evaluate_reduced_mass(self):
         # TODO: add tests for reduced_mass values
         # Make sure there is a motor associated with the rocket
         if self.motor is None:
-            print("Please associate this rocket with a motor!")
+            logger.warning("Please associate this rocket with a motor!")
             return False
 
         # Get nicknames
@@ -661,14 +698,20 @@ def __evaluate_single_surface_cp_to_cdm(self, surface, position):
         """Calculates the relative position of each aerodynamic surface
         center of pressure to the rocket's center of dry mass in Body Axes
         Coordinate System."""
-        pos = Vector(
+        # position of the surfaces coordinate system origin in body frame
+        pos_origin = Vector(
             [
-                (position.x - self.cm_eccentricity_x) * self._csys - surface.cpx,
-                (position.y - self.cm_eccentricity_y) - surface.cpy,
-                (position.z - self.center_of_dry_mass_position) * self._csys
-                - surface.cpz,
+                (position.x - self.cm_eccentricity_x) * self._csys,
+                (position.y - self.cm_eccentricity_y),
+                (position.z - self.center_of_dry_mass_position) * self._csys,
             ]
         )
+        # position of the center of pressure in body frame
+        pos = (
+            surface._rotation_surface_to_body
+            @ Vector([surface.cpx, surface.cpy, surface.cpz])
+            + pos_origin
+        )  # TODO: this should be recomputed whenever cant angle changes for fin
         self.surfaces_cp_to_cdm[surface] = pos
 
     def evaluate_stability_margin(self):
@@ -727,6 +770,45 @@ def evaluate_static_margin(self):
         )
         return self.static_margin
 
+    def warn_if_unstable(self):
+        """Warn if the rocket is aerodynamically unstable at motor ignition.
+
+        Emits an :class:`UnstableRocketWarning` when the static margin at
+        ``t=0`` is negative. This is meant to be checked once the rocket is
+        fully assembled (e.g. when a :class:`Flight` is created), not during
+        incremental construction, so that partially-built-but-ultimately-stable
+        rockets do not raise spurious warnings.
+
+        The check is skipped when ``GenericSurface`` instances are present:
+        their lift coefficient derivative is not accounted for in
+        ``evaluate_center_of_pressure``, so the computed static margin does not
+        reflect their contribution and cannot be trusted for this check.
+
+        Returns
+        -------
+        bool
+            ``True`` if a warning was emitted, ``False`` otherwise.
+        """
+        has_generic_surface = any(
+            isinstance(aero_surface, GenericSurface)
+            for aero_surface, _position in self.aerodynamic_surfaces
+        )
+        if has_generic_surface:
+            return False
+
+        initial_static_margin = self.static_margin.get_value_opt(0)
+        if initial_static_margin < 0:
+            warnings.warn(
+                f"The rocket has a negative static margin "
+                f"({initial_static_margin:.2f} cal) at motor ignition (t=0), "
+                "indicating an aerodynamically unstable configuration. Check the "
+                "placement of fins and nose cone relative to the center of mass.",
+                UnstableRocketWarning,
+                stacklevel=2,
+            )
+            return True
+        return False
+
     def evaluate_dry_inertias(self):
         """Calculates and returns the rocket's dry inertias relative to
         the rocket's center of dry mass. The inertias are saved and returned
@@ -1027,9 +1109,9 @@ def add_motor(self, motor, position):  # pylint: disable=too-many-statements
         if hasattr(self, "motor"):
             # pylint: disable=access-member-before-definition
             if not isinstance(self.motor, EmptyMotor):
-                print(
+                logger.warning(
                     "Only one motor per rocket is currently supported. "
-                    + "Overwriting previous motor."
+                    "Overwriting previous motor."
                 )
         self.motor = motor
         self.motor_position = position
@@ -1066,11 +1148,20 @@ def __add_single_surface(self, surface, position):
         """Adds a single aerodynamic surface to the rocket. Makes checks for
         rail buttons case, and position type.
         """
-        position = (
-            Vector([0, 0, position])
-            if not isinstance(position, (Vector, tuple, list))
-            else Vector(position)
-        )
+        if isinstance(surface, (TrapezoidalFin, EllipticalFin, FreeFormFin)):
+            # TODO: the leading edge position should be recomputed whenever cant
+            # angle of the fin changes, but currently it is only computed at the
+            # moment the fin is added to the rocket. Detecting when the cant
+            # angle changes is hard, because it is a parameter of the fin, while
+            # the leading edge position is only defined on the rocket
+            position = surface._compute_leading_edge_position(position, self._csys)
+        else:
+            position = (
+                Vector([0, 0, position])
+                if not isinstance(position, (Vector, tuple, list))
+                else Vector(position)
+            )
+
         if isinstance(surface, RailButtons):
             self.rail_buttons = Components()
             self.rail_buttons.add(surface, position)
@@ -1085,17 +1176,23 @@ def add_surfaces(self, surfaces, positions):
 
         Parameters
         ----------
-        surfaces : list, AeroSurface, NoseCone, TrapezoidalFins, EllipticalFins, Tail, RailButtons
+        surfaces : list[AeroSurface], AeroSurface
             Aerodynamic surface to be added to the rocket. Can be a list of
             AeroSurface if more than one surface is to be added.
-        positions : int, float, list, tuple, Vector
-            Position, in m, of the aerodynamic surface's center of pressure
-            relative to the user defined rocket coordinate system.
-            If a list is passed, it will correspond to the position of each item
-            in the surfaces list.
-            For NoseCone type, position is relative to the nose cone tip.
-            For Fins type, position is relative to the point belonging to
-            the root chord which is highest in the rocket coordinate system.
+        positions : int, float, tuple, list, Vector
+            Position(s) of the aerodynamic surface's reference point. Can be:
+
+            - a single number (int or float) giving the z-coordinate along
+              the rocket axis.
+            - a sequence of three numbers (x, y, z) representing the full
+              position in the user-defined coordinate system.
+
+            If passing multiple surfaces, provide a list of positions matching
+            each surface in order.
+            For NoseCone type, position is the tip coordinate along the axis.
+            For Fins type, position refers to the z-coordinate of the root
+            chord leading-edge point closest to the nose cone, before any
+            cant-angle offset is considered.
             For Tail type, position is relative to the point belonging to the
             tail which is highest in the rocket coordinate system.
             For RailButtons type, position is relative to the lower rail button.
@@ -1108,10 +1205,18 @@ def add_surfaces(self, surfaces, positions):
         -------
         None
         """
-        try:
+        if isinstance(surfaces, Iterable):
+            if isinstance(positions, Iterable):
+                if len(surfaces) != len(positions):
+                    raise ValueError(
+                        "The number of surfaces and positions must be the same."
+                    )
+            else:
+                positions = [positions] * len(surfaces)
+
             for surface, position in zip(surfaces, positions):
                 self.__add_single_surface(surface, position)
-        except TypeError:
+        else:
             self.__add_single_surface(surfaces, positions)
 
         self.evaluate_center_of_pressure()
@@ -1285,10 +1390,10 @@ def add_trapezoidal_fins(
         tip_chord : int, float
             Fin tip chord in meters.
         position : int, float
-            Fin set position relative to the rocket's coordinate system.
-            By fin set position, understand the point belonging to the root
-            chord which is highest in the rocket coordinate system (i.e.
-            the point closest to the nose cone tip).
+            Fin set position in the z coordinate of the user defined rocket
+            coordinate system. By fin set position, understand the point
+            belonging to the root chord which is highest in the rocket
+            coordinate system (i.e. the point closest to the nose cone tip).
 
             See Also
             --------
@@ -1334,6 +1439,15 @@ def add_trapezoidal_fins(
         fin_set : TrapezoidalFins
             Fin set object created.
         """
+        if n <= 2:
+            warnings.warn(
+                "Fin sets with 2 or fewer fins assume a symmetric, evenly-spaced "
+                "configuration and may not accurately capture asymmetric forces. "
+                "For 1 or 2 fins, consider creating individual fin objects "
+                "(e.g. TrapezoidalFin) and adding them with add_surfaces.",
+                UserWarning,
+                stacklevel=2,
+            )
 
         # Modify radius if not given, use rocket radius, otherwise use given.
         radius = radius if radius is not None else self.radius
@@ -1381,10 +1495,10 @@ def add_elliptical_fins(
         span : int, float
             Fin span in meters.
         position : int, float
-            Fin set position relative to the rocket's coordinate system. By fin
-            set position, understand the point belonging to the root chord which
-            is highest in the rocket coordinate system (i.e. the point
-            closest to the nose cone tip).
+            Fin set position in the z coordinate of the user defined rocket
+            coordinate system. By fin set position, understand the point
+            belonging to the root chord which is highest in the rocket
+            coordinate system (i.e. the point closest to the nose cone tip).
 
             See Also
             --------
@@ -1420,6 +1534,16 @@ def add_elliptical_fins(
         fin_set : EllipticalFins
             Fin set object created.
         """
+        if n <= 2:
+            warnings.warn(
+                "Fin sets with 2 or fewer fins assume a symmetric, evenly-spaced "
+                "configuration and may not accurately capture asymmetric forces. "
+                "For 1 or 2 fins, consider creating individual fin objects "
+                "(e.g. TrapezoidalFin) and adding them with add_surfaces.",
+                UserWarning,
+                stacklevel=2,
+            )
+
         radius = radius if radius is not None else self.radius
         fin_set = EllipticalFins(n, root_chord, span, radius, cant_angle, airfoil, name)
         self.add_surfaces(fin_set, position)
@@ -1451,10 +1575,10 @@ def add_free_form_fins(
             The shape will be interpolated between the points, in the order
             they are given. The last point connects to the first point.
         position : int, float
-            Fin set position relative to the rocket's coordinate system.
-            By fin set position, understand the point belonging to the root
-            chord which is highest in the rocket coordinate system (i.e.
-            the point closest to the nose cone tip).
+            Fin set position in the z coordinate of the user defined rocket
+            coordinate system. By fin set position, understand the point
+            belonging to the root chord which is highest in the rocket
+            coordinate system (i.e. the point closest to the nose cone tip).
 
             See Also
             --------
@@ -1486,6 +1610,15 @@ def add_free_form_fins(
         fin_set : FreeFormFins
             Fin set object created.
         """
+        if n <= 2:
+            warnings.warn(
+                "Fin sets with 2 or fewer fins assume a symmetric, evenly-spaced "
+                "configuration and may not accurately capture asymmetric forces. "
+                "For 1 or 2 fins, consider creating individual fin objects "
+                "(e.g. TrapezoidalFin) and adding them with add_surfaces.",
+                UserWarning,
+                stacklevel=2,
+            )
 
         # Modify radius if not given, use rocket radius, otherwise use given.
         radius = radius if radius is not None else self.radius
@@ -1505,9 +1638,9 @@ def add_free_form_fins(
 
     def add_parachute(
         self,
-        name,
-        cd_s,
-        trigger,
+        name=None,
+        cd_s=None,
+        trigger=None,
         sampling_rate=100,
         lag=0,
         noise=(0, 0, 0),
@@ -1515,12 +1648,16 @@ def add_parachute(
         height=None,
         porosity=0.0432,
         drag_coefficient=1.4,
+        parachute=None,
     ):
-        """Creates a new parachute, storing its parameters such as
-        opening delay, drag coefficients and trigger function.
+        """Adds parachute to the rocket parachute list
 
         Parameters
         ----------
+        parachute : object with parent class Parachute | None
+            The parachute object to be added to the rocket. Default is
+            none for backwards compatibility. In future versions, it
+            will be required to pass a valid object.
         name : string
             Parachute name, such as drogue and main. Has no impact in
             simulation, as it is only used to display data in a more
@@ -1597,26 +1734,54 @@ def add_parachute(
 
         Returns
         -------
-        parachute : Parachute
-            Parachute containing trigger, sampling_rate, lag, cd_s, noise,
+        parachute : Parachute | None
+            If the parachute argument is not None, nothing is returned.
+            If the parachute argument is None, then it returns a
+            Parachute object containing trigger, sampling_rate, lag, cd_s, noise,
             radius, drag_coefficient, height, porosity and name. Furthermore,
             it stores clean_pressure_signal, noise_signal and
             noisyPressureSignal which are filled in during Flight simulation.
+            Returning a Parachute object is deprecated and will be removed
+            in future versions.
         """
-        parachute = Parachute(
-            name,
-            cd_s,
-            trigger,
-            sampling_rate,
-            lag,
-            noise,
-            radius,
-            height,
-            porosity,
-            drag_coefficient,
-        )
-        self.parachutes.append(parachute)
-        return self.parachutes[-1]
+        if parachute is not None:
+            if not isinstance(parachute, Parachute):
+                raise TypeError(
+                    "The 'parachute' argument must be an instance of a Parachute "
+                    "subclass (e.g. 'HemisphericalParachute')."
+                )
+            self.parachutes.append(parachute)
+        else:
+            # For backwards compatibility
+            deprecation_message = (
+                "Passing parachute parameters directly to 'add_parachute' method is "
+                + "deprecated and will be removed in version 1.14.0. Please create "
+                + "an object of class 'HemisphericalParachute' and pass it to the "
+                + "'parachute' argument of 'add_parachute' for the same behavior."
+            )
+            warn(message=deprecation_message, category=FutureWarning, stacklevel=2)
+            if name is None:
+                raise ValueError("Invalid 'name' argument! Please provide a string!")
+            if cd_s is None:
+                raise ValueError("Invalid 'cd_s' argument! Please provide a float!")
+            if trigger is None:
+                raise ValueError(
+                    "Invalid 'trigger' argument! Please provide a callable, float, or string!"
+                )
+            legacy_parachute = HemisphericalParachute(
+                name,
+                cd_s,
+                trigger,
+                sampling_rate,
+                lag,
+                noise,
+                radius,
+                height,
+                porosity,
+                drag_coefficient,
+            )
+            self.parachutes.append(legacy_parachute)
+            return self.parachutes[-1]
 
     def add_sensor(self, sensor, position):
         """Adds a sensor to the rocket.
@@ -1630,8 +1795,7 @@ def add_sensor(self, sensor, position):
             must be in the format (x, y, z) where x, y, and z are defined in the
             rocket's user defined coordinate system. If a single value is
             passed, it is assumed to be along the z-axis (centerline) of the
-            rocket's user defined coordinate system and angular_position and
-            radius must be given.
+            rocket's user defined coordinate system.
 
         Returns
         -------
@@ -1697,15 +1861,19 @@ def add_air_brakes(
             This function is expected to take the following arguments, in order:
 
             1. `time` (float): The current simulation time in seconds.
-            2. `sampling_rate` (float): The rate at which the controller
-               function is called, measured in Hertz (Hz).
+            2. `sampling_rate` (float or None): The rate at which the controller
+               function is called, measured in Hertz (Hz). It is None for
+               continuous controllers (called every solver step), so any
+               `1 / sampling_rate` computation must guard against None.
             3. `state` (list): The state vector of the simulation, structured as
                `[x, y, z, vx, vy, vz, e0, e1, e2, e3, wx, wy, wz]`.
             4. `state_history` (list): A record of the rocket's state at each
-               step throughout the simulation. The state_history is organized as a
-               list of lists, with each sublist containing a state vector. The last
-               item in the list always corresponds to the previous state vector,
-               providing a chronological sequence of the rocket's evolving states.
+               step throughout the simulation. It is organized as a list of
+               lists, ordered oldest to newest, where each sublist is a
+               *time-prefixed* state row `[t, x, y, z, vx, vy, vz, e0, e1, e2,
+               e3, wx, wy, wz]` (the same layout as `Flight.solution`, one
+               leading `time` element ahead of the `state` layout in item 3).
+               The last item corresponds to the most recent recorded step.
             5. `observed_variables` (list): A list containing the variables that
                the controller function returns. The initial value in the first
                step of the simulation of this list is provided by the
@@ -1825,7 +1993,7 @@ def set_rail_buttons(
             as the rotation around the symmetry axis of the rocket
             relative to one of the other principal axis.
             Default value is 45 degrees, generally used in rockets with
-            4 fins.
+            4 fins. See :ref:`Angular Position Inputs `
         radius : int, float, optional
             Fuselage radius where the rail buttons are located.
 
diff --git a/rocketpy/sensitivity/sensitivity_model.py b/rocketpy/sensitivity/sensitivity_model.py
index 428897bff..737a46097 100644
--- a/rocketpy/sensitivity/sensitivity_model.py
+++ b/rocketpy/sensitivity/sensitivity_model.py
@@ -1,9 +1,13 @@
+import logging
+
 import numpy as np
 
 from rocketpy.plots.sensitivity_plots import _SensitivityModelPlots
 from rocketpy.prints.sensitivity_prints import _SensitivityModelPrints
 from rocketpy.tools import check_requirement_version, import_optional_dependency
 
+logger = logging.getLogger(__name__)
+
 
 class SensitivityModel:
     """Performs a 'local variance based first-order
@@ -354,11 +358,13 @@ def __check_requirements(self):
                 check_requirement_version(module_name, version)
             except (ValueError, ImportError) as e:  # pragma: no cover
                 has_error = True
-                print(
-                    f"The following error occurred while importing {module_name}: {e}"
+                logger.error(
+                    "The following error occurred while importing %s: %s",
+                    module_name,
+                    e,
                 )
         if has_error:  # pragma: no cover
-            print(
+            logger.error(
                 "Given the above errors, some methods may not work. Please run "
-                + "'pip install rocketpy[sensitivity]' to install extra requirements."
+                "'pip install rocketpy[sensitivity]' to install extra requirements."
             )
diff --git a/rocketpy/sensors/sensor.py b/rocketpy/sensors/sensor.py
index 0b44aeb18..137505272 100644
--- a/rocketpy/sensors/sensor.py
+++ b/rocketpy/sensors/sensor.py
@@ -1,4 +1,5 @@
 import json
+import logging
 import warnings
 from abc import ABC, abstractmethod
 
@@ -6,6 +7,8 @@
 
 from rocketpy.mathutils.vector_matrix import Matrix, Vector
 
+logger = logging.getLogger(__name__)
+
 
 # pylint: disable=too-many-statements
 class Sensor(ABC):
@@ -235,24 +238,25 @@ def _generic_export_measured_data(self, filename, file_format, data_labels):
         if file_format.lower() == "csv":
             # if sensor has been added multiple times to the simulated rocket
             if isinstance(self.measured_data[0], list):
-                print("Data saved to", end=" ")
+                saved = []
                 for i, data in enumerate(self.measured_data):
                     with open(filename + f"_{i + 1}", "w") as f:
                         f.write(",".join(data_labels) + "\n")
                         for entry in data:
                             f.write(",".join(map(str, entry)) + "\n")
-                    print(filename + f"_{i + 1},", end=" ")
+                    saved.append(filename + f"_{i + 1}")
+                logger.info("Data saved to: %s", ", ".join(saved))
             else:
                 with open(filename, "w") as f:
                     f.write(",".join(data_labels) + "\n")
                     for entry in self.measured_data:
                         f.write(",".join(map(str, entry)) + "\n")
-                print(f"Data saved to {filename}")
+                logger.info("Data saved to %s", filename)
             return
 
         if file_format.lower() == "json":
             if isinstance(self.measured_data[0], list):
-                print("Data saved to", end=" ")
+                saved = []
                 for i, data in enumerate(self.measured_data):
                     data_dict = {label: [] for label in data_labels}
                     for entry in data:
@@ -260,7 +264,8 @@ def _generic_export_measured_data(self, filename, file_format, data_labels):
                             data_dict[label].append(value)
                     with open(filename + f"_{i + 1}", "w") as f:
                         json.dump(data_dict, f)
-                    print(filename + f"_{i + 1},", end=" ")
+                    saved.append(filename + f"_{i + 1}")
+                logger.info("Data saved to: %s", ", ".join(saved))
             else:
                 data_dict = {label: [] for label in data_labels}
                 for entry in self.measured_data:
@@ -268,7 +273,7 @@ def _generic_export_measured_data(self, filename, file_format, data_labels):
                         data_dict[label].append(value)
                 with open(filename, "w") as f:
                     json.dump(data_dict, f)
-                print(f"Data saved to {filename}")
+                logger.info("Data saved to %s", filename)
             return
 
     # pylint: disable=unused-argument
diff --git a/rocketpy/simulation/flight.py b/rocketpy/simulation/flight.py
index 1443d1d80..cda75766b 100644
--- a/rocketpy/simulation/flight.py
+++ b/rocketpy/simulation/flight.py
@@ -1,4 +1,5 @@
 # pylint: disable=too-many-lines
+import logging
 import math
 import warnings
 from copy import deepcopy
@@ -7,8 +8,6 @@
 import numpy as np
 from scipy.integrate import BDF, DOP853, LSODA, RK23, RK45, OdeSolver, Radau
 
-from rocketpy.simulation.flight_data_exporter import FlightDataExporter
-
 from ..mathutils.function import Function, funcify_method
 from ..mathutils.vector_matrix import Matrix, Vector
 from ..motors.point_mass_motor import PointMassMotor
@@ -27,6 +26,8 @@
     quaternions_to_spin,
 )
 
+logger = logging.getLogger(__name__)
+
 ODE_SOLVER_MAP = {
     "RK23": RK23,
     "RK45": RK45,
@@ -196,6 +197,10 @@ class Flight:
         impacts the ground.
     Flight.parachute_events : array
         List that stores parachute events triggered during flight.
+    Flight.parachutes_info : dict
+        A dictionary whose keys are the parachute names and values
+        are the relevant dynamic variables calculated by that
+        parachute model.
     Flight.function_evaluations : array
         List that stores number of derivative function evaluations
         during numerical integration in cumulative manner.
@@ -587,6 +592,9 @@ def __init__(  # pylint: disable=too-many-arguments,too-many-statements
             A custom ``scipy.integrate.OdeSolver`` can be passed as well.
             For more information on the integration methods, see the scipy
             documentation [1]_.
+        simulation_mode : str, optional
+            Simulation mode to use. Can be "6 DOF" for 6 degrees of freedom or
+            "3 DOF" for 3 degrees of freedom. Default is "6 DOF".
         Returns
         -------
         None
@@ -598,6 +606,11 @@ def __init__(  # pylint: disable=too-many-arguments,too-many-statements
         # Save arguments
         self.env = environment
         self.rocket = rocket
+        # Warn about an aerodynamically unstable rocket now that it is fully
+        # assembled and about to be simulated. Doing it here (instead of on every
+        # add_surfaces call during construction) avoids spurious warnings for
+        # partially-built rockets that are ultimately stable.
+        self.rocket.warn_if_unstable()
         self.rail_length = rail_length
         if self.rail_length <= 0:  # pragma: no cover
             raise ValueError("Rail length must be a positive value.")
@@ -698,15 +711,6 @@ def __simulate(self, verbose):
 
                 self.__process_sensors_and_controllers_at_current_node(node, phase)
 
-                for controller in node._controllers:
-                    controller(
-                        self.t,
-                        self.y_sol,
-                        self.solution,
-                        self.sensors,
-                        self.env,
-                    )
-
                 for parachute in node.parachutes:
                     # Calculate and save pressure signal
                     (
@@ -715,11 +719,14 @@ def __simulate(self, verbose):
                     ) = self.__calculate_and_save_pressure_signals(
                         parachute, node.t, self.y_sol[2]
                     )
-                    if parachute.triggerfunc(
+                    if self._evaluate_parachute_trigger(
+                        parachute,
                         noisy_pressure,
                         height_above_ground_level,
                         self.y_sol,
                         self.sensors,
+                        phase.derivative,
+                        self.t,
                     ):
                         # Remove parachute from flight parachutes
                         self.parachutes.remove(parachute)
@@ -735,30 +742,11 @@ def __simulate(self, verbose):
                             )
                             i += 1
                         # Create flight phase for time after inflation
-                        callbacks = [
-                            lambda self, parachute_cd_s=parachute.cd_s: setattr(
-                                self, "parachute_cd_s", parachute_cd_s
-                            ),
-                            lambda self, parachute_radius=parachute.radius: setattr(
-                                self, "parachute_radius", parachute_radius
-                            ),
-                            lambda self, parachute_height=parachute.height: setattr(
-                                self, "parachute_height", parachute_height
-                            ),
-                            lambda self, parachute_porosity=parachute.porosity: setattr(
-                                self, "parachute_porosity", parachute_porosity
-                            ),
-                            lambda self, added_mass_coefficient=parachute.added_mass_coefficient: (
-                                setattr(
-                                    self,
-                                    "parachute_added_mass_coefficient",
-                                    added_mass_coefficient,
-                                )
-                            ),
-                        ]
+                        callbacks = []
+                        u_dot_parachute = self.u_dot_parachute_wrapper(parachute)
                         self.flight_phases.add_phase(
                             node.t + parachute.lag,
-                            self.u_dot_parachute,
+                            u_dot_parachute,
                             callbacks,
                             clear=False,
                             index=phase_index + i,
@@ -786,7 +774,16 @@ def __simulate(self, verbose):
                     self.y_sol = phase.solver.y
                     if verbose:
                         print(f"Current Simulation Time: {self.t:3.4f} s", end="\r")
-
+                        logger.debug("Current Simulation Time: %3.4f s", self.t)
+
+                    for controller in self._continuous_controllers:
+                        controller(
+                            self.t,
+                            self.y_sol,
+                            self.solution,
+                            self.sensors,
+                            self.env,
+                        )
                     if self.__check_simulation_events(phase, phase_index, node_index):
                         break  # Stop if simulation termination event occurred
 
@@ -810,6 +807,7 @@ def __simulate(self, verbose):
             self.__cache_sensor_data()
         if verbose:
             print(f"\n>>> Simulation Completed at Time: {self.t:3.4f} s")
+        logger.info("Simulation completed at time: %3.4f s", self.t)
 
     def __setup_phase_time_nodes(self, phase):
         """Set up time nodes for the current phase.
@@ -853,7 +851,7 @@ def __process_sensors_and_controllers_at_current_node(self, node, phase):
         phase : FlightPhase
             The current flight phase.
         """
-        if self.sensors:
+        if node._component_sensors:
             u_dot = phase.derivative(self.t, self.y_sol)
             self.__measure_sensors(node._component_sensors, u_dot)
 
@@ -932,11 +930,14 @@ def __check_and_handle_parachute_triggers(
             ) = self.__calculate_and_save_pressure_signals(
                 parachute, node.t, self.y_sol[2]
             )
-            if not parachute.triggerfunc(
+            if not self._evaluate_parachute_trigger(
+                parachute,
                 noisy_pressure,
                 height_above_ground_level,
                 self.y_sol,
                 self.sensors,
+                phase.derivative,
+                node.t,
             ):
                 continue  # Check next parachute
 
@@ -959,30 +960,10 @@ def __check_and_handle_parachute_triggers(
                 i += 1
 
             # Create flight phase for time after inflation
-            callbacks = [
-                lambda self, parachute_cd_s=parachute.cd_s: setattr(
-                    self, "parachute_cd_s", parachute_cd_s
-                ),
-                lambda self, parachute_radius=parachute.radius: setattr(
-                    self, "parachute_radius", parachute_radius
-                ),
-                lambda self, parachute_height=parachute.height: setattr(
-                    self, "parachute_height", parachute_height
-                ),
-                lambda self, parachute_porosity=parachute.porosity: setattr(
-                    self, "parachute_porosity", parachute_porosity
-                ),
-                lambda self, added_mass_coefficient=parachute.added_mass_coefficient: (
-                    setattr(
-                        self,
-                        "parachute_added_mass_coefficient",
-                        added_mass_coefficient,
-                    )
-                ),
-            ]
+            callbacks = []
             self.flight_phases.add_phase(
                 node.t + parachute.lag,
-                self.u_dot_parachute,
+                self.u_dot_parachute_wrapper(parachute),
                 callbacks,
                 clear=False,
                 index=phase_index + i,
@@ -1343,11 +1324,14 @@ def __check_overshootable_parachute_triggers(
             )
 
             # Check for parachute trigger
-            if not parachute.triggerfunc(
+            if not self._evaluate_parachute_trigger(
+                parachute,
                 noisy_pressure,
                 height_above_ground_level,
                 overshootable_node.y_sol,
                 self.sensors,
+                phase.derivative,
+                overshootable_node.t,
             ):
                 continue  # Check next parachute
 
@@ -1367,30 +1351,10 @@ def __check_overshootable_parachute_triggers(
                 i += 1
 
             # Create flight phase for time after inflation
-            callbacks = [
-                lambda self, parachute_cd_s=parachute.cd_s: setattr(
-                    self, "parachute_cd_s", parachute_cd_s
-                ),
-                lambda self, parachute_radius=parachute.radius: setattr(
-                    self, "parachute_radius", parachute_radius
-                ),
-                lambda self, parachute_height=parachute.height: setattr(
-                    self, "parachute_height", parachute_height
-                ),
-                lambda self, parachute_porosity=parachute.porosity: setattr(
-                    self, "parachute_porosity", parachute_porosity
-                ),
-                lambda self, added_mass_coefficient=parachute.added_mass_coefficient: (
-                    setattr(
-                        self,
-                        "parachute_added_mass_coefficient",
-                        added_mass_coefficient,
-                    )
-                ),
-            ]
+            callbacks = []
             self.flight_phases.add_phase(
                 overshootable_node.t + parachute.lag,
-                self.u_dot_parachute,
+                self.u_dot_parachute_wrapper(parachute),
                 callbacks,
                 clear=False,
                 index=phase_index + i,
@@ -1448,6 +1412,51 @@ def __calculate_and_save_pressure_signals(self, parachute, t, z):
 
         return noisy_pressure, height_above_ground_level
 
+    def _evaluate_parachute_trigger(
+        self, parachute, pressure, height, y, sensors, derivative_func, t
+    ):
+        """Evaluate parachute trigger, passing both sensors and u_dot to wrapper.
+
+        This helper preserves backward compatibility with existing trigger
+        signatures. The wrapper in Parachute always expects (p, h, y, sensors, u_dot)
+        and Flight computes u_dot only when the trigger requests it (optimization).
+
+        Parameters
+        ----------
+        parachute : Parachute
+            Parachute object.
+        pressure : float
+            Noisy pressure value passed to trigger.
+        height : float
+            Height above ground level passed to trigger.
+        y : array
+            State vector at evaluation time.
+        sensors : list
+            Sensors list passed to trigger.
+        derivative_func : callable
+            Function to compute derivatives: derivative_func(t, y)
+        t : float
+            Time at which to evaluate derivatives.
+
+        Returns
+        -------
+        bool
+            True if trigger condition met, False otherwise.
+        """
+        triggerfunc = parachute.triggerfunc
+
+        # Check wrapper metadata for expectations
+        expects_udot = getattr(triggerfunc, "_expects_udot", False)
+
+        # Compute u_dot only if needed (performance optimization)
+        u_dot = None
+        if expects_udot:
+            u_dot = derivative_func(t, y)
+
+        # Call the wrapper with both sensors and u_dot
+        # The wrapper will decide which args to pass to the user's function
+        return triggerfunc(pressure, height, y, sensors, u_dot)
+
     def __init_solution_monitors(self):
         # Initialize solution monitors
         self.out_of_rail_time = 0
@@ -1461,6 +1470,7 @@ def __init_solution_monitors(self):
         self.impact_velocity = 0
         self.impact_state = np.array([0])
         self.parachute_events = []
+        self.parachutes_info = {}
         self.__post_processed_variables = []
 
     def __init_flight_state(self):
@@ -1585,6 +1595,7 @@ def __init_equations_of_motion(self):
     def __init_controllers(self):
         """Initialize controllers and sensors"""
         self._controllers = self.rocket._controllers[:]
+        self._continuous_controllers = [c for c in self._controllers if c.is_continuous]
         self.sensors = self.rocket.sensors.get_components()
 
         # reset controllable object to initial state (only airbrakes for now)
@@ -2624,87 +2635,55 @@ def u_dot_generalized(self, t, u, post_processing=False):  # pylint: disable=too
 
         return u_dot
 
-    def u_dot_parachute(self, t, u, post_processing=False):
-        """Calculates derivative of u state vector with respect to time
-        when rocket is flying under parachute. A 3 DOF approximation is
-        used.
+    def u_dot_parachute_wrapper(self, parachute):
+        """Creates a wrapper for the u_dot_parachute used to solve the equations of
+        motion when that parachute is triggered. The reason is the following:
+        each parachute implements its own u_dot. This u_dot takes as argument the
+        state variable 'u', the time 't', and additional flight information as
+        'flight_information'. However, the solver (which is in the Flight class)
+        only allows u_dot to take 'u' and 't' as arguments. Hence, this wrapper
+        wraps the output of the u_dot to match the expected arguments of the
+        solver.
 
         Parameters
         ----------
-        t : float
-            Time in seconds
-        u : list
-            State vector defined by u = [x, y, z, vx, vy, vz, e0, e1,
-            e2, e3, omega1, omega2, omega3].
-        post_processing : bool, optional
-            If True, adds flight data information directly to self
-            variables such as self.angle_of_attack. Default is False.
+        parachute : Parachute
+            Parachute that is current executing the equations of motion
 
         Return
         ------
-        u_dot : list
-            State vector defined by u_dot = [vx, vy, vz, ax, ay, az,
-            e0dot, e1dot, e2dot, e3dot, alpha1, alpha2, alpha3].
+        u_dot_parachute : function
+            A augmented (with flight information) u_dot_parachute used in the solver
 
         """
-        # Get relevant state data
-        z, vx, vy, vz = u[2:6]
-
-        # Get atmospheric data
-        rho = self.env.density.get_value_opt(z)
-        wind_velocity_x = self.env.wind_velocity_x.get_value_opt(z)
-        wind_velocity_y = self.env.wind_velocity_y.get_value_opt(z)
-
-        # Get the mass of the rocket
-        mp = self.rocket.dry_mass
-
-        # to = 1.2
-        # eta = 1
-        # Rdot = (6 * R * (1 - eta) / (1.2**6)) * (
-        #     (1 - eta) * t**5 + eta * (to**3) * (t**2)
-        # )
-        # Rdot = 0
-
-        # tf = 8 * nominal diameter / velocity at line stretch
-
-        # Calculate added mass
-        ma = (
-            self.parachute_added_mass_coefficient
-            * rho
-            * (2 / 3)
-            * np.pi
-            * self.parachute_radius**2
-            * self.parachute_height
-        )
-
-        # Calculate freestream speed
-        freestream_x = vx - wind_velocity_x
-        freestream_y = vy - wind_velocity_y
-        freestream_z = vz
-        free_stream_speed = (freestream_x**2 + freestream_y**2 + freestream_z**2) ** 0.5
-
-        # Determine drag force
-        pseudo_drag = -0.5 * rho * self.parachute_cd_s * free_stream_speed
-        # pseudo_drag = pseudo_drag - ka * rho * 4 * np.pi * (R**2) * Rdot
-        Dx = pseudo_drag * freestream_x  # add eta efficiency for wake
-        Dy = pseudo_drag * freestream_y
-        Dz = pseudo_drag * freestream_z
-        ax = Dx / (mp + ma)
-        ay = Dy / (mp + ma)
-        az = (Dz - mp * self.env.gravity.get_value_opt(z)) / (mp + ma)
-
-        # Add coriolis acceleration
-        _, w_earth_y, w_earth_z = self.env.earth_rotation_vector
-        ax -= 2 * (vz * w_earth_y - vy * w_earth_z)
-        ay -= 2 * (vx * w_earth_z)
-        az -= 2 * (-vx * w_earth_y)
+        # additional information used for the u_dot_parachute equations
+        flight_information = {
+            "env": self.env,
+            "rocket": self.rocket,
+        }
 
-        if post_processing:
-            self.__post_processed_variables.append(
-                [t, ax, ay, az, 0, 0, 0, Dx, Dy, Dz, 0, 0, 0, 0]
+        def u_dot_parachute(t, u, post_processing=False):
+            parachute_output = parachute.u_dot(
+                t=t,
+                u=u,
+                flight_information=flight_information,
+                post_processing=post_processing,
             )
+            state = parachute_output["state"]
+            if post_processing:
+                # The parachute dynamic information (e.g. drag) must be saved
+                # over the accepted solution steps, which are only replayed
+                # during post-processing. Saving it during the raw integration
+                # would also store the solver's internal and rejected steps,
+                # polluting the ``parachutes_info`` time series.
+                post_processing_info = parachute_output["post_processing_information"]
+                self.__post_processed_variables.append(post_processing_info)
+                parachute.add_information_to_flight(
+                    self, parachute_output["additional_info"]
+                )
+            return state
 
-        return [vx, vy, vz, ax, ay, az, 0, 0, 0, 0, 0, 0, 0]
+        return u_dot_parachute
 
     @cached_property
     def solution_array(self):
@@ -3994,10 +3973,17 @@ def __transform_pressure_signals_lists_to_functions(self):
             parachute.noise_signal_function = Function(
                 parachute.noise_signal, "Time (s)", "Pressure Noise (Pa)", "linear"
             )
+            # Function arithmetic drops the axis labels/title, so restore them
+            # to keep the pressure-signal plots readable (see pressure_signals).
             parachute.noisy_pressure_signal_function = (
                 parachute.clean_pressure_signal_function
                 + parachute.noise_signal_function
             )
+            parachute.noisy_pressure_signal_function.set_inputs("Time (s)")
+            parachute.noisy_pressure_signal_function.set_outputs(
+                "Pressure - With Noise (Pa)"
+            )
+            parachute.noisy_pressure_signal_function.set_title("Noisy Pressure Signal")
 
     @cached_property
     def __evaluate_post_process(self):
@@ -4026,11 +4012,20 @@ def __evaluate_post_process(self):
 
         return np.array(self.__post_processed_variables)
 
-    def calculate_stall_wind_velocity(self, stall_angle):  # TODO: move to utilities
-        """Function to calculate the maximum wind velocity before the angle of
-        attack exceeds a desired angle, at the instant of departing rail launch.
-        Can be helpful if you know the exact stall angle of all aerodynamics
-        surfaces.
+    @deprecated(
+        reason="This method is deprecated in version 1.13.0 and will be fully "
+        "removed by version 1.15.0",
+        alternative="rocketpy.utilities.calculate_stall_wind_velocity",
+    )
+    def calculate_stall_wind_velocity(self, stall_angle):
+        """Calculate the maximum wind velocity before the angle of attack exceeds
+        a desired angle, at the instant of departing rail launch. Can be helpful
+        if you know the exact stall angle of all aerodynamics surfaces.
+
+        .. deprecated:: 1.13.0
+           This method is deprecated and will be fully removed by version
+           1.15.0. Use :func:`rocketpy.utilities.calculate_stall_wind_velocity`
+           instead.
 
         Parameters
         ----------
@@ -4040,97 +4035,23 @@ def calculate_stall_wind_velocity(self, stall_angle):  # TODO: move to utilities
 
         Return
         ------
-        None
-        """
-        v_f = self.out_of_rail_velocity
-
-        theta = np.radians(self.inclination)
-        stall_angle = np.radians(stall_angle)
-
-        c = (math.cos(stall_angle) ** 2 - math.cos(theta) ** 2) / math.sin(
-            stall_angle
-        ) ** 2
-        w_v = (
-            2 * v_f * math.cos(theta) / c
-            + (
-                4 * v_f * v_f * math.cos(theta) * math.cos(theta) / (c**2)
-                + 4 * 1 * v_f * v_f / c
-            )
-            ** 0.5
-        ) / 2
-
-        stall_angle = np.degrees(stall_angle)
-        print(
-            "Maximum wind velocity at Rail Departure time before angle"
-            + f" of attack exceeds {stall_angle:.3f}°: {w_v:.3f} m/s"
-        )
-
-    @deprecated(
-        reason="Moved to FlightDataExporter.export_pressures()",
-        version="v1.12.0",
-        alternative="rocketpy.simulation.flight_data_exporter.FlightDataExporter.export_pressures",
-    )
-    def export_pressures(self, file_name, time_step):
-        """
-        .. deprecated:: 1.11
-           Use :class:`rocketpy.simulation.flight_data_exporter.FlightDataExporter`
-           and call ``.export_pressures(...)``.
-        """
-        return FlightDataExporter(self).export_pressures(file_name, time_step)
-
-    @deprecated(
-        reason="Moved to FlightDataExporter.export_data()",
-        version="v1.12.0",
-        alternative="rocketpy.simulation.flight_data_exporter.FlightDataExporter.export_data",
-    )
-    def export_data(self, file_name, *variables, time_step=None):
-        """
-        .. deprecated:: 1.11
-           Use :class:`rocketpy.simulation.flight_data_exporter.FlightDataExporter`
-           and call ``.export_data(...)``.
+        float
+            Maximum wind velocity, in m/s, at rail departure before the angle of
+            attack exceeds ``stall_angle``.
         """
-        return FlightDataExporter(self).export_data(
-            file_name, *variables, time_step=time_step
+        # Imported lazily to avoid a circular import (utilities imports Flight).
+        from rocketpy.utilities import (  # pylint: disable=import-outside-toplevel
+            calculate_stall_wind_velocity,
         )
 
-    @deprecated(
-        reason="Moved to FlightDataExporter.export_sensor_data()",
-        version="v1.12.0",
-        alternative="rocketpy.simulation.flight_data_exporter.FlightDataExporter.export_sensor_data",
-    )
-    def export_sensor_data(self, file_name, sensor=None):
-        """
-        .. deprecated:: 1.11
-           Use :class:`rocketpy.simulation.flight_data_exporter.FlightDataExporter`
-           and call ``.export_sensor_data(...)``.
-        """
-        return FlightDataExporter(self).export_sensor_data(file_name, sensor=sensor)
-
-    @deprecated(
-        reason="Moved to FlightDataExporter.export_kml()",
-        version="v1.12.0",
-        alternative="rocketpy.simulation.flight_data_exporter.FlightDataExporter.export_kml",
-    )
-    def export_kml(
-        self,
-        file_name="trajectory.kml",
-        time_step=None,
-        extrude=True,
-        color="641400F0",
-        altitude_mode="absolute",
-    ):
-        """
-        .. deprecated:: 1.11
-           Use :class:`rocketpy.simulation.flight_data_exporter.FlightDataExporter`
-           and call ``.export_kml(...)``.
-        """
-        return FlightDataExporter(self).export_kml(
-            file_name=file_name,
-            time_step=time_step,
-            extrude=extrude,
-            color=color,
-            altitude_mode=altitude_mode,
+        w_v = calculate_stall_wind_velocity(self, stall_angle)
+        # Display for interactive use, but also return the value so it is never
+        # silently lost (it was previously only logged at INFO level).
+        print(
+            "Maximum wind velocity at Rail Departure time before angle "
+            f"of attack exceeds {stall_angle:.3f}°: {w_v:.3f} m/s"
         )
+        return w_v
 
     def info(self):
         """Prints out a summary of the data available about the Flight."""
@@ -4148,6 +4069,14 @@ def time_iterator(self, node_list):
             i += 1
 
     def to_dict(self, **kwargs):
+        # ``parachutes_info`` is populated as a side effect of the lazy
+        # post-processing pass (``add_information_to_flight`` is only called with
+        # ``post_processing=True``). Trigger that pass before reading the
+        # attribute so the per-parachute drag time series is serialized even for
+        # flights that have not been post-processed yet (e.g. flights without
+        # controllers that are saved before any acceleration/force property or
+        # plot is accessed). This is a no-op once post-processing has run.
+        _ = self.ax
         data = {
             "rocket": self.rocket,
             "env": self.env,
@@ -4171,6 +4100,7 @@ def to_dict(self, **kwargs):
             "apogee_time": self.apogee_time,
             "apogee": self.apogee,
             "parachute_events": self.parachute_events,
+            "parachutes_info": self.parachutes_info,
             "impact_state": self.impact_state,
             "impact_velocity": self.impact_velocity,
             "x_impact": self.x_impact,
@@ -4276,8 +4206,8 @@ def __repr__(self):
             return str(self.list)
 
         def display_warning(self, *messages):  # pragma: no cover
-            """A simple function to print a warning message."""
-            print("WARNING:", *messages)
+            """A simple function to log a warning message."""
+            logger.warning(" ".join(str(m) for m in messages))
 
         def add(self, flight_phase, index=None):  # TODO: quite complex method
             """Add a flight phase to the list. It will be inserted in the
@@ -4497,6 +4427,9 @@ def add_parachutes(self, parachutes, t_init, t_end):
 
         def add_controllers(self, controllers, t_init, t_end):
             for controller in controllers:
+                # Skip node creation for continuous controllers
+                if controller.is_continuous:
+                    continue
                 # Calculate start of sampling time nodes
                 controller_time_step = 1 / controller.sampling_rate
                 controller_node_list = [
diff --git a/rocketpy/simulation/flight_comparator.py b/rocketpy/simulation/flight_comparator.py
index 7f1b34286..19785000a 100644
--- a/rocketpy/simulation/flight_comparator.py
+++ b/rocketpy/simulation/flight_comparator.py
@@ -396,7 +396,6 @@ def _plot_external_sources(
                 (rmse / mean_abs_y_sim) * 100 if mean_abs_y_sim != 0 else np.inf
             )
 
-            # Print Metrics
             print(f"Source: {label}")
             print(f"  - MAE:            {mae:.4f}")
             print(f"  - RMSE:           {rmse:.4f}")
diff --git a/rocketpy/simulation/flight_data_exporter.py b/rocketpy/simulation/flight_data_exporter.py
index 8bdc53c17..80ee051c7 100644
--- a/rocketpy/simulation/flight_data_exporter.py
+++ b/rocketpy/simulation/flight_data_exporter.py
@@ -3,10 +3,13 @@
 """
 
 import json
+import logging
 
 import numpy as np
 import simplekml
 
+logger = logging.getLogger(__name__)
+
 
 class FlightDataExporter:
     """Export data from a rocketpy.Flight object to various formats."""
@@ -57,7 +60,7 @@ def export_pressures(self, file_name, time_step):
         # pylint: disable=W1514, E1121
         with open(file_name, "w") as file:
             if len(f.rocket.parachutes) == 0:
-                print("No parachutes in the rocket, saving static pressure.")
+                logger.info("No parachutes in the rocket, saving static pressure.")
                 for t in time_points:
                     file.write(f"{t:f}, {f.pressure.get_value_opt(t):.5f}\n")
             else:
@@ -210,7 +213,7 @@ def export_sensor_data(self, file_name, sensor=None):
 
         with open(file_name, "w") as file:
             json.dump(data_dict, file)
-        print("Sensor data exported to: ", file_name)
+        logger.info("Sensor data exported to: %s", file_name)
 
     def export_kml(
         self,
@@ -295,4 +298,4 @@ def export_kml(
 
         # Save the KML
         kml.save(file_name)
-        print("File ", file_name, " saved with success!")
+        logger.info("File %s saved with success!", file_name)
diff --git a/rocketpy/simulation/flight_data_importer.py b/rocketpy/simulation/flight_data_importer.py
index b4498a1dc..cec357fd5 100644
--- a/rocketpy/simulation/flight_data_importer.py
+++ b/rocketpy/simulation/flight_data_importer.py
@@ -2,6 +2,7 @@
 and build a rocketpy.Flight object from it.
 """
 
+import logging
 from os import listdir
 from os.path import isfile, join
 
@@ -10,6 +11,8 @@
 from rocketpy.mathutils import Function
 from rocketpy.units import UNITS_CONVERSION_DICT
 
+logger = logging.getLogger(__name__)
+
 FLIGHT_LABEL_MAP = {
     # "name of Flight Attribute": "Label to be displayed"
     "acceleration": "Acceleration (m/s^2)",
@@ -285,7 +288,7 @@ def __create_attributes(self, filepath, interpolation, extrapolation):
             # Convert units if necessary
             if units and col in units:
                 values /= UNITS_CONVERSION_DICT[units[col]]
-                print(f"Attribute '{name}' converted from {units[col]} to SI")
+                logger.debug("Attribute '%s' converted from %s to SI", name, units[col])
 
             # Create Function object and set as attribute
             setattr(
@@ -301,9 +304,8 @@ def __create_attributes(self, filepath, interpolation, extrapolation):
             )
             created.append(name)
 
-        print(
-            "The following attributes were create and are now available to be used: ",
-            created,
+        logger.info(
+            "The following attributes were created and are now available: %s", created
         )
 
     def read_data(
diff --git a/rocketpy/simulation/monte_carlo.py b/rocketpy/simulation/monte_carlo.py
index e10789a7d..a7641595a 100644
--- a/rocketpy/simulation/monte_carlo.py
+++ b/rocketpy/simulation/monte_carlo.py
@@ -13,6 +13,7 @@
 latest documentation.
 """
 
+import csv
 import json
 import os
 import traceback
@@ -37,7 +38,7 @@
 # TODO: Create evolution plots to analyze convergence
 
 
-class MonteCarlo:
+class MonteCarlo:  # pylint: disable=too-many-public-methods
     """Class to run a Monte Carlo simulation of a rocket flight.
 
     Attributes
@@ -222,7 +223,7 @@ def simulate(
         self.number_of_simulations = number_of_simulations
         self._initial_sim_idx = self.num_of_loaded_sims if append else 0
 
-        _SimMonitor.reprint("Starting Monte Carlo analysis")
+        print("Starting Monte Carlo analysis")
 
         self.__setup_files(append)
 
@@ -298,12 +299,12 @@ def __run_in_serial(self):
             sim_monitor.print_final_status()
 
         except KeyboardInterrupt:
-            _SimMonitor.reprint("Keyboard Interrupt, files saved.")
+            print("Keyboard interrupt received. Files saved.")
             with open(self._error_file, "a", encoding="utf-8") as f:
                 f.write(inputs_json)
 
         except Exception as error:
-            _SimMonitor.reprint(f"Error on iteration {sim_monitor.count}: {error}")
+            print(f"Error on iteration {sim_monitor.count}: {error}")
             with open(self._error_file, "a", encoding="utf-8") as f:
                 f.write(inputs_json)
             raise error
@@ -324,7 +325,7 @@ def __run_in_parallel(self, n_workers=None):
         """
         n_workers = self.__validate_number_of_workers(n_workers)
 
-        _SimMonitor.reprint(f"Running Monte Carlo simulation with {n_workers} workers.")
+        print(f"Running Monte Carlo simulation with {n_workers} workers.")
 
         multiprocess, managers = _import_multiprocess()
 
@@ -417,8 +418,12 @@ def __sim_producer(self, seed, sim_monitor, mutex, error_event):  # pylint: disa
                 try:
                     mutex.acquire()
                     if error_event.is_set():
-                        sim_monitor.reprint(
-                            "Simulation Interrupt, files from simulation "
+                        # Runs in a worker process spawned via multiprocessing:
+                        # logging handlers configured in the main process are
+                        # not guaranteed to be inherited (e.g. Windows "spawn"),
+                        # so this must use print() to remain visible.
+                        _SimMonitor.reprint(
+                            f"Simulation interrupt. Files from simulation "
                             f"{sim_idx} saved."
                         )
                         with open(self.error_file, "a", encoding="utf-8") as f:
@@ -440,8 +445,11 @@ def __sim_producer(self, seed, sim_monitor, mutex, error_event):  # pylint: disa
             with open(self.error_file, "a", encoding="utf-8") as f:
                 f.write(inputs_json)
 
-            sim_monitor.reprint(f"Error on iteration {sim_idx}:")
-            sim_monitor.reprint(traceback.format_exc())
+            # See note above: must use print() to remain visible from a
+            # multiprocessing worker process.
+            _SimMonitor.reprint(
+                f"Error on iteration {sim_idx}:\n{traceback.format_exc()}"
+            )
             error_event.set()
             mutex.release()
 
@@ -525,6 +533,107 @@ def estimate_confidence_interval(
 
         return res.confidence_interval
 
+    def simulate_convergence(
+        self,
+        target_attribute="apogee_time",
+        target_confidence=0.95,
+        tolerance=0.5,
+        max_simulations=1000,
+        batch_size=50,
+        parallel=False,
+        n_workers=None,
+    ):
+        """Run Monte Carlo simulations in batches until the confidence interval
+        width converges within the specified tolerance or the maximum number of
+        simulations is reached.
+
+        Parameters
+        ----------
+        target_attribute : str
+            The target attribute to track its convergence (e.g., "apogee", "apogee_time", etc.).
+        target_confidence : float, optional
+            The confidence level for the interval (between 0 and 1). Default is 0.95.
+        tolerance : float, optional
+            The desired width of the confidence interval in seconds, meters, or other units. Default is 0.5.
+        max_simulations : int, optional
+            The maximum number of simulations to run to avoid infinite loops. Default is 1000.
+        batch_size : int, optional
+            The number of simulations to run in each batch. Default is 50.
+        parallel : bool, optional
+            Whether to run simulations in parallel. Default is False.
+        n_workers : int, optional
+            The number of worker processes to use if running in parallel. Default is None.
+
+        Returns
+        -------
+        confidence_interval_history : list of float
+            History of confidence interval widths, one value per batch of simulations.
+            The last element corresponds to the width when the simulation stopped for
+            either meeting the tolerance or reaching the maximum number of simulations.
+        """
+
+        # Validate inputs up-front. Without this, a non-positive batch_size makes
+        # the loop run zero new simulations every iteration and spin forever.
+        if not isinstance(batch_size, (int, np.integer)) or batch_size <= 0:
+            raise ValueError(
+                f"'batch_size' must be a positive integer, got {batch_size!r}."
+            )
+        if not isinstance(max_simulations, (int, np.integer)) or max_simulations <= 0:
+            raise ValueError(
+                f"'max_simulations' must be a positive integer, got "
+                f"{max_simulations!r}."
+            )
+        if not isinstance(tolerance, (int, float)) or tolerance <= 0:
+            raise ValueError(
+                f"'tolerance' must be a positive number, got {tolerance!r}."
+            )
+        if not 0 < target_confidence < 1:
+            raise ValueError(
+                "'target_confidence' must be between 0 and 1 (exclusive), got "
+                f"{target_confidence!r}."
+            )
+
+        self.import_outputs(self.filename.with_suffix(".outputs.txt"))
+        confidence_interval_history = []
+
+        while self.num_of_loaded_sims < max_simulations:
+            total_sims = min(self.num_of_loaded_sims + batch_size, max_simulations)
+
+            self.simulate(
+                number_of_simulations=total_sims,
+                append=True,
+                include_function_data=False,
+                parallel=parallel,
+                n_workers=n_workers,
+            )
+
+            self.import_outputs(self.filename.with_suffix(".outputs.txt"))
+
+            ci = self.estimate_confidence_interval(
+                attribute=target_attribute,
+                confidence_level=target_confidence,
+            )
+
+            width = float(ci.high - ci.low)
+            confidence_interval_history.append(width)
+
+            # A NaN width means the target attribute contains NaN values; the
+            # tolerance check would never pass, so the loop would run to
+            # max_simulations and silently return a NaN history. Stop and warn.
+            if np.isnan(width):
+                warnings.warn(
+                    f"The confidence interval width for '{target_attribute}' is "
+                    "NaN, likely because the attribute contains NaN values. "
+                    "Stopping convergence early; check the simulation outputs.",
+                    stacklevel=2,
+                )
+                break
+
+            if width <= tolerance:
+                break
+
+        return confidence_interval_history
+
     def __evaluate_flight_inputs(self, sim_idx):
         """Evaluates the inputs of a single flight simulation.
 
@@ -601,7 +710,7 @@ def __terminate_simulation(self):
         self.output_file = self._output_file
         self.error_file = self._error_file
 
-        _SimMonitor.reprint(f"Results saved to {self._output_file}")
+        print(f"Results saved to {self._output_file}")
 
     def __check_export_list(self, export_list):
         """
@@ -807,58 +916,232 @@ def error_file(self, value):
         self._error_file = value
         self.set_errors_log()
 
+    # File format helpers
+
+    @staticmethod
+    def _detect_file_format(filepath):
+        """Detect file format from the file extension.
+
+        Parameters
+        ----------
+        filepath : str or Path
+            Path to the file.
+
+        Returns
+        -------
+        str
+            One of ``"jsonl"``, ``"csv"``, or ``"json"``.
+
+        Raises
+        ------
+        ValueError
+            If the file extension is not supported.
+        """
+        suffix = Path(filepath).suffix.lower()
+        format_map = {".txt": "jsonl", ".csv": "csv", ".json": "json"}
+        if suffix not in format_map:
+            raise ValueError(
+                f"Unsupported file extension '{suffix}'. "
+                "Expected '.txt', '.csv', or '.json'."
+            )
+        return format_map[suffix]
+
+    @staticmethod
+    def _parse_csv_value(value):
+        """Parse a string value from a CSV cell into its appropriate type.
+
+        Parameters
+        ----------
+        value : str
+            The raw string value from the CSV cell.
+
+        Returns
+        -------
+        int, float, dict, list, or str
+            The parsed value in its appropriate Python type.
+        """
+        if value == "":
+            return value
+        # Try parsing JSON objects/arrays
+        if value.startswith(("{", "[")):
+            try:
+                return json.loads(value)
+            except (json.JSONDecodeError, ValueError):
+                pass
+        # Try numeric types
+        try:
+            int_val = int(value)
+            # Ensure the string was truly an integer (not "1.0")
+            if str(int_val) == value:
+                return int_val
+        except ValueError:
+            pass
+        try:
+            return float(value)
+        except ValueError:
+            pass
+        return value
+
+    def _read_log_file(self, filepath):
+        """Read a log file in any supported format and return a list of dicts.
+
+        Parameters
+        ----------
+        filepath : str or Path
+            Path to the log file. Format is detected from the extension.
+
+        Returns
+        -------
+        list of dict
+            A list of dictionaries, one per simulation record.
+        """
+        fmt = self._detect_file_format(filepath)
+        result = []
+        with open(filepath, mode="r", encoding="utf-8") as f:
+            if fmt == "jsonl":
+                for line in f:
+                    line = line.strip()
+                    if line:
+                        result.append(json.loads(line))
+            elif fmt == "json":
+                content = f.read().strip()
+                if content:
+                    result = json.loads(content)
+            elif fmt == "csv":
+                reader = csv.DictReader(f)
+                for row in reader:
+                    result.append({k: self._parse_csv_value(v) for k, v in row.items()})
+        return result
+
+    @staticmethod
+    def _write_log_to_csv(log_data, filepath, flatten=False):
+        """Write a list of dicts to a CSV file.
+
+        Parameters
+        ----------
+        log_data : list of dict
+            The data to write. Each dict is one row.
+        filepath : str or Path
+            Output file path.
+        flatten : bool, optional
+            If True, non-scalar columns (dicts, lists) are omitted.
+            If False (default), non-scalar values are serialized as JSON
+            strings in the CSV cells.
+
+        Raises
+        ------
+        ValueError
+            If ``log_data`` is empty.
+        """
+        if not log_data:
+            raise ValueError(
+                "No data to export. Run a simulation first or import existing data."
+            )
+        # Collect all keys preserving insertion order
+        all_keys = list(dict.fromkeys(k for row in log_data for k in row))
+
+        if flatten:
+            # Identify scalar-only keys
+            scalar_keys = []
+            for key in all_keys:
+                if all(not isinstance(row.get(key), (dict, list)) for row in log_data):
+                    scalar_keys.append(key)
+            fieldnames = scalar_keys
+        else:
+            fieldnames = all_keys
+
+        with open(filepath, mode="w", newline="", encoding="utf-8") as f:
+            writer = csv.DictWriter(f, fieldnames=fieldnames, extrasaction="ignore")
+            writer.writeheader()
+            for row in log_data:
+                csv_row = {}
+                for key in fieldnames:
+                    value = row.get(key, "")
+                    if isinstance(value, (dict, list)):
+                        csv_row[key] = json.dumps(value)
+                    else:
+                        csv_row[key] = value
+                writer.writerow(csv_row)
+
+    def _write_log_to_json(self, log_data, filepath):
+        """Write a list of dicts to a JSON file as a proper JSON array.
+
+        Parameters
+        ----------
+        log_data : list of dict
+            The data to write. Each dict becomes one element of the array.
+        filepath : str or Path
+            Output file path.
+
+        Raises
+        ------
+        ValueError
+            If ``log_data`` is empty.
+        """
+        if not log_data:
+            raise ValueError(
+                "No data to export. Run a simulation first or import existing data."
+            )
+        with open(filepath, mode="w", encoding="utf-8") as f:
+            json.dump(log_data, f, cls=RocketPyEncoder, indent=2)
+
     # Setters for post simulation attributes
 
     def set_inputs_log(self):
         """
         Sets inputs_log from a file into an attribute for easy access.
+        Supports .txt (JSONL), .csv, and .json file formats.
 
         Returns
         -------
         None
         """
-        self.inputs_log = []
-        with open(self.input_file, mode="r", encoding="utf-8") as rows:
-            for line in rows:
-                self.inputs_log.append(json.loads(line))
+        self.inputs_log = self._read_log_file(self.input_file)
 
     def set_outputs_log(self):
         """
         Sets outputs_log from a file into an attribute for easy access.
+        Supports .txt (JSONL), .csv, and .json file formats.
 
         Returns
         -------
         None
         """
-        self.outputs_log = []
-        with open(self.output_file, mode="r", encoding="utf-8") as rows:
-            for line in rows:
-                self.outputs_log.append(json.loads(line))
+        self.outputs_log = self._read_log_file(self.output_file)
 
     def set_errors_log(self):
         """
         Sets errors_log from a file into an attribute for easy access.
+        Supports .txt (JSONL), .csv, and .json file formats.
 
         Returns
         -------
         None
         """
-        self.errors_log = []
-        with open(self.error_file, mode="r", encoding="utf-8") as errors:
-            for line in errors:
-                self.errors_log.append(json.loads(line))
+        self.errors_log = self._read_log_file(self.error_file)
 
     def set_num_of_loaded_sims(self):
         """
         Determines the number of simulations loaded from output_file being
-        currently used.
+        currently used. Supports .txt (JSONL), .csv, and .json formats.
 
         Returns
         -------
         None
         """
+        fmt = self._detect_file_format(self.output_file)
         with open(self.output_file, mode="r", encoding="utf-8") as outputs:
-            self.num_of_loaded_sims = sum(1 for _ in outputs)
+            if fmt == "jsonl":
+                self.num_of_loaded_sims = sum(1 for _ in outputs)
+            elif fmt == "csv":
+                # Subtract 1 for the header row
+                self.num_of_loaded_sims = max(0, sum(1 for _ in outputs) - 1)
+            elif fmt == "json":
+                content = outputs.read().strip()
+                if content:
+                    self.num_of_loaded_sims = len(json.loads(content))
+                else:
+                    self.num_of_loaded_sims = 0
 
     def set_results(self):
         """
@@ -915,13 +1198,15 @@ def set_processed_results(self):
 
     def import_outputs(self, filename=None):
         """
-        Import Monte Carlo results from .txt file and save it into a dictionary.
+        Import Monte Carlo results from a file and save it into a dictionary.
+        Supports .txt (JSONL), .csv, and .json file formats.
 
         Parameters
         ----------
         filename : str, optional
             Name or directory path to the file to be imported. If none,
-            self.filename will be used.
+            self.filename will be used with the default .outputs.txt suffix.
+            Files with .csv or .json extensions are also accepted.
 
         Returns
         -------
@@ -929,7 +1214,7 @@ def import_outputs(self, filename=None):
 
         Notes
         -----
-        Notice that you can import the outputs, inputs, and errors from the a
+        Notice that you can import the outputs, inputs, and errors from a
         file without the need to run simulations. You can use previously saved
         files to process analyze the results or to continue a simulation.
         """
@@ -942,20 +1227,22 @@ def import_outputs(self, filename=None):
             with open(filepath, "w+", encoding="utf-8"):
                 self.output_file = filepath
 
-        _SimMonitor.reprint(
-            f"A total of {self.num_of_loaded_sims} simulations results were "
-            f"loaded from the following output file: {self.output_file}\n"
+        print(
+            f"A total of {self.num_of_loaded_sims} simulation results were "
+            f"loaded from: {self.output_file}"
         )
 
     def import_inputs(self, filename=None):
         """
-        Import Monte Carlo inputs from .txt file and save it into a dictionary.
+        Import Monte Carlo inputs from a file and save it into a dictionary.
+        Supports .txt (JSONL), .csv, and .json file formats.
 
         Parameters
         ----------
         filename : str, optional
             Name or directory path to the file to be imported. If none,
-            self.filename will be used.
+            self.filename will be used with the default .inputs.txt suffix.
+            Files with .csv or .json extensions are also accepted.
 
         Returns
         -------
@@ -970,17 +1257,19 @@ def import_inputs(self, filename=None):
             with open(filepath, "w+", encoding="utf-8"):
                 self.input_file = filepath
 
-        _SimMonitor.reprint(f"The following input file was imported: {self.input_file}")
+        print(f"The following input file was imported: {self.input_file}")
 
     def import_errors(self, filename=None):
         """
-        Import Monte Carlo errors from .txt file and save it into a dictionary.
+        Import Monte Carlo errors from a file and save it into a dictionary.
+        Supports .txt (JSONL), .csv, and .json file formats.
 
         Parameters
         ----------
         filename : str, optional
             Name or directory path to the file to be imported. If none,
-            self.filename will be used.
+            self.filename will be used with the default .errors.txt suffix.
+            Files with .csv or .json extensions are also accepted.
 
         Returns
         -------
@@ -995,11 +1284,11 @@ def import_errors(self, filename=None):
             with open(filepath, "w+", encoding="utf-8"):
                 self.error_file = filepath
 
-        _SimMonitor.reprint(f"The following error file was imported: {self.error_file}")
+        print(f"The following error file was imported: {self.error_file}")
 
     def import_results(self, filename=None):
         """
-        Import Monte Carlo results from .txt file and save it into a dictionary.
+        Import Monte Carlo results from a file and save it into a dictionary.
 
         Parameters
         ----------
@@ -1214,6 +1503,109 @@ def compare_ellipses(self, other_monte_carlo, **kwargs):
         """
         self.plots.ellipses_comparison(other_monte_carlo, **kwargs)
 
+    # CSV and JSON export methods
+
+    def export_outputs_to_csv(self, filename):
+        """Export simulation outputs to a CSV file.
+
+        Each row represents one simulation. All output values are scalar,
+        so the CSV is directly usable in spreadsheet applications.
+
+        Parameters
+        ----------
+        filename : str
+            Path to the output CSV file.
+
+        Raises
+        ------
+        ValueError
+            If no output data is available to export.
+        """
+        self._write_log_to_csv(self.outputs_log, filename)
+
+    def export_outputs_to_json(self, filename):
+        """Export simulation outputs to a JSON file as an array of objects.
+
+        Parameters
+        ----------
+        filename : str
+            Path to the output JSON file.
+
+        Raises
+        ------
+        ValueError
+            If no output data is available to export.
+        """
+        self._write_log_to_json(self.outputs_log, filename)
+
+    def export_inputs_to_csv(self, filename, flatten=False):
+        """Export simulation inputs to a CSV file.
+
+        Parameters
+        ----------
+        filename : str
+            Path to the output CSV file.
+        flatten : bool, optional
+            If True, columns with non-scalar values (dicts, lists) are
+            omitted from the CSV. If False (default), non-scalar values
+            are serialized as JSON strings within the CSV cells.
+
+        Raises
+        ------
+        ValueError
+            If no input data is available to export.
+        """
+        self._write_log_to_csv(self.inputs_log, filename, flatten=flatten)
+
+    def export_inputs_to_json(self, filename):
+        """Export simulation inputs to a JSON file as an array of objects.
+
+        Parameters
+        ----------
+        filename : str
+            Path to the output JSON file.
+
+        Raises
+        ------
+        ValueError
+            If no input data is available to export.
+        """
+        self._write_log_to_json(self.inputs_log, filename)
+
+    def export_errors_to_csv(self, filename, flatten=False):
+        """Export simulation errors to a CSV file.
+
+        Parameters
+        ----------
+        filename : str
+            Path to the output CSV file.
+        flatten : bool, optional
+            If True, columns with non-scalar values (dicts, lists) are
+            omitted from the CSV. If False (default), non-scalar values
+            are serialized as JSON strings within the CSV cells.
+
+        Raises
+        ------
+        ValueError
+            If no error data is available to export.
+        """
+        self._write_log_to_csv(self.errors_log, filename, flatten=flatten)
+
+    def export_errors_to_json(self, filename):
+        """Export simulation errors to a JSON file as an array of objects.
+
+        Parameters
+        ----------
+        filename : str
+            Path to the output JSON file.
+
+        Raises
+        ------
+        ValueError
+            If no error data is available to export.
+        """
+        self._write_log_to_json(self.errors_log, filename)
+
 
 def _import_multiprocess():
     """Import the necessary modules and submodules for the
@@ -1308,15 +1700,12 @@ def print_final_status(self):
         msg = f"Completed {self.count - self.initial_count} iterations."
         msg += f" In total, {self.count} simulations are exported.\n"
         msg += f"Total wall time: {time() - self.start_time:.1f} s"
-
         _SimMonitor.reprint(msg, end="\n", flush=True)
 
     @staticmethod
     def reprint(msg, end="\n", flush=True):
-        """
-        Prints a message on the same line as the previous one and replaces the
-        previous message with the new one, deleting the extra characters from
-        the previous message.
+        """Prints a message replacing the previous line to avoid cluttering
+        the terminal output during concurrent simulation progress updates.
 
         Parameters
         ----------
@@ -1331,12 +1720,8 @@ def reprint(msg, end="\n", flush=True):
         -------
         None
         """
-
         padding = ""
-
         if len(msg) < _SimMonitor._last_print_len:
             padding = " " * (_SimMonitor._last_print_len - len(msg))
-
         print(msg + padding, end=end, flush=flush)
-
         _SimMonitor._last_print_len = len(msg)
diff --git a/rocketpy/stochastic/stochastic_model.py b/rocketpy/stochastic/stochastic_model.py
index 879b61e70..ca26f6578 100644
--- a/rocketpy/stochastic/stochastic_model.py
+++ b/rocketpy/stochastic/stochastic_model.py
@@ -550,6 +550,11 @@ def visualize_attributes(self):
         Model object. The report includes the variable name, the nominal value,
         the standard deviation, and the distribution function used to generate
         the random attributes.
+
+        Returns
+        -------
+        str
+            The formatted report. It is also printed for interactive use.
         """
 
         def format_attribute(attr, value):
@@ -630,4 +635,10 @@ def format_attribute(attr, value):
                 format_attribute(attr, attributes[attr]) for attr in custom_attributes
             )
 
-        print("\n".join(filter(None, report)))
+        # This is an explicit, user-invoked display method, so it prints
+        # unconditionally (like ``info``/``all_info`` elsewhere) rather than
+        # logging at INFO level, which is silenced by default. The report is
+        # also returned so it can be used programmatically.
+        report_str = "\n".join(filter(None, report))
+        print(report_str)
+        return report_str
diff --git a/rocketpy/stochastic/stochastic_parachute.py b/rocketpy/stochastic/stochastic_parachute.py
index 038907187..c0ad1ae1d 100644
--- a/rocketpy/stochastic/stochastic_parachute.py
+++ b/rocketpy/stochastic/stochastic_parachute.py
@@ -1,6 +1,6 @@
 """Defines the StochasticParachute class."""
 
-from rocketpy.rocket import Parachute
+from rocketpy.rocket import HemisphericalParachute
 
 from .stochastic_model import StochasticModel
 
@@ -148,4 +148,4 @@ def create_object(self):
             Parachute object with the randomly generated input arguments.
         """
         generated_dict = next(self.dict_generator())
-        return Parachute(**generated_dict)
+        return HemisphericalParachute(**generated_dict)
diff --git a/rocketpy/stochastic/stochastic_rocket.py b/rocketpy/stochastic/stochastic_rocket.py
index 794a66c85..87c479855 100644
--- a/rocketpy/stochastic/stochastic_rocket.py
+++ b/rocketpy/stochastic/stochastic_rocket.py
@@ -17,7 +17,7 @@
     TrapezoidalFins,
 )
 from rocketpy.rocket.components import Components
-from rocketpy.rocket.parachute import Parachute
+from rocketpy.rocket.parachutes.parachute import Parachute
 from rocketpy.rocket.rocket import Rocket
 from rocketpy.stochastic.stochastic_generic_motor import StochasticGenericMotor
 from rocketpy.stochastic.stochastic_motor_model import StochasticMotorModel
@@ -362,7 +362,7 @@ def add_parachute(self, parachute):
         # checks if input is a StochasticParachute type
         if not isinstance(parachute, (Parachute, StochasticParachute)):
             raise TypeError(
-                "`parachute` must be of Parachute or StochasticParachute type"
+                "`parachute` must be of valid parachute model or StochasticParachute type"
             )
         if isinstance(parachute, Parachute):
             parachute = StochasticParachute(parachute=parachute)
@@ -795,13 +795,6 @@ def create_object(self):
 
         for parachute in self.parachutes:
             parachute = self._create_parachute(parachute)
-            rocket.add_parachute(
-                name=parachute.name,
-                cd_s=parachute.cd_s,
-                trigger=parachute.trigger,
-                sampling_rate=parachute.sampling_rate,
-                lag=parachute.lag,
-                noise=parachute.noise,
-            )
+            rocket.add_parachute(parachute=parachute)
 
         return rocket
diff --git a/rocketpy/tools.py b/rocketpy/tools.py
index 68ab3404a..a7e3582f6 100644
--- a/rocketpy/tools.py
+++ b/rocketpy/tools.py
@@ -11,6 +11,7 @@
 import importlib
 import importlib.metadata
 import json
+import logging
 import math
 import re
 import time
@@ -25,6 +26,8 @@
 from matplotlib.patches import Ellipse
 from packaging import version as packaging_version
 
+logger = logging.getLogger(__name__)
+
 # Mapping of module name and the name of the package that should be installed
 INSTALL_MAPPING = {"IPython": "ipython"}
 
@@ -1469,6 +1472,6 @@ def find_obj_from_hash(obj, hash_, depth_limit=None):
 
     res = doctest.testmod()
     if res.failed < 1:
-        print(f"All the {res.attempted} tests passed!")
+        logger.info("All the %d tests passed!", res.attempted)
     else:
-        print(f"{res.failed} out of {res.attempted} tests failed.")
+        logger.error("%d out of %d tests failed.", res.failed, res.attempted)
diff --git a/rocketpy/utilities.py b/rocketpy/utilities.py
index 09083339d..4c76180fb 100644
--- a/rocketpy/utilities.py
+++ b/rocketpy/utilities.py
@@ -1,10 +1,12 @@
 import inspect
 import json
+import logging
 import os
 import warnings
 from datetime import date
 from importlib.metadata import version
 from pathlib import Path
+from typing import TYPE_CHECKING
 
 import matplotlib.pyplot as plt
 import numpy as np
@@ -16,7 +18,60 @@
 from .mathutils.function import Function
 from .plots.plot_helpers import show_or_save_plot
 from .rocket.aero_surface import TrapezoidalFins
-from .simulation.flight import Flight
+
+if TYPE_CHECKING:  # pragma: no cover
+    from .simulation.flight import Flight
+
+
+def enable_logging(level="WARNING"):
+    """Enable RocketPy logging output to the console.
+
+    Attaches a StreamHandler to the ``rocketpy`` logger so that internal
+    runtime events (simulation progress, warnings, errors) are printed to
+    the terminal. Only RocketPy logs are affected — global/root logging
+    is not modified. By default, only WARNING and above are shown.
+
+    Parameters
+    ----------
+    level : str, optional
+        The minimum logging level to display. Options are "DEBUG", "INFO",
+        "WARNING", "ERROR", and "CRITICAL". Default is "WARNING".
+
+    Examples
+    --------
+    Show only warnings and errors (default):
+
+    >>> import rocketpy
+    >>> rocketpy.utilities.enable_logging()
+
+    Show all internal runtime messages, including simulation progress:
+
+    >>> import rocketpy
+    >>> rocketpy.utilities.enable_logging(level="DEBUG")
+
+    Show confirmations like "Simulation completed" and "File saved":
+
+    >>> import rocketpy
+    >>> rocketpy.utilities.enable_logging(level="INFO")
+    """
+    numeric_level = getattr(logging, level.upper(), None)
+    if not isinstance(numeric_level, int):
+        raise ValueError(f"Invalid logging level: '{level}'")
+
+    logger = logging.getLogger("rocketpy")
+
+    # Remove any existing StreamHandlers to avoid duplicate messages
+    logger.handlers = [
+        h for h in logger.handlers if not isinstance(h, logging.StreamHandler)
+    ]
+
+    logger.setLevel(numeric_level)
+
+    handler = logging.StreamHandler()
+    handler.setLevel(numeric_level)
+    handler.setFormatter(logging.Formatter("%(levelname)s | %(name)s | %(message)s"))
+
+    logger.addHandler(handler)
 
 
 def compute_cd_s_from_drop_test(
@@ -202,7 +257,43 @@ def du(z, u):
     return altitude_function, velocity_function, final_sol
 
 
-# pylint: disable=too-many-statements
+def calculate_stall_wind_velocity(flight, stall_angle):
+    """Calculate the maximum wind velocity before the angle of attack exceeds a
+    desired stall angle, at the instant of departing the launch rail.
+
+    Can be helpful if you know the exact stall angle of all aerodynamic
+    surfaces.
+
+    Parameters
+    ----------
+    flight : rocketpy.Flight
+        Flight object containing the rocket's flight data. Its
+        ``out_of_rail_velocity`` and ``inclination`` attributes are used.
+    stall_angle : float
+        Angle, in degrees, for which you would like to know the maximum wind
+        speed before the angle of attack exceeds it.
+
+    Returns
+    -------
+    float
+        Maximum wind velocity, in m/s, at rail departure before the angle of
+        attack exceeds ``stall_angle``.
+    """
+    v_f = flight.out_of_rail_velocity
+    theta = np.radians(flight.inclination)
+    stall_angle_rad = np.radians(stall_angle)
+
+    c = (np.cos(stall_angle_rad) ** 2 - np.cos(theta) ** 2) / np.sin(
+        stall_angle_rad
+    ) ** 2
+    w_v = (
+        2 * v_f * np.cos(theta) / c
+        + (4 * v_f * v_f * np.cos(theta) * np.cos(theta) / (c**2) + 4 * v_f * v_f / c)
+        ** 0.5
+    ) / 2
+    return w_v
+
+
 def fin_flutter_analysis(
     fin_thickness,
     shear_modulus,
@@ -231,8 +322,7 @@ def fin_flutter_analysis(
     see_prints : boolean, optional
         True if you want to see the prints, False otherwise.
     see_graphs : boolean, optional
-        True if you want to see the graphs, False otherwise. If False, the
-        function will return the vectors containing the data for the graphs.
+        True if you want to see the graphs, False otherwise.
     filename : str | None, optional
         The path the plot should be saved to. By default None, in which case the
         plot will be shown instead of saved. Supported file endings are: eps,
@@ -241,7 +331,12 @@ def fin_flutter_analysis(
 
     Return
     ------
-    None
+    flutter_mach : rocketpy.Function
+        The Mach Number at which the fin flutter occurs as a function of time,
+        considering the variation of the speed of sound with altitude.
+    safety_factor : rocketpy.Function
+        The Safety Factor for the fin flutter as a function of time, defined as
+        the flutter Mach Number divided by the freestream Mach Number.
     """
     found_fin = False
     surface_area = None
@@ -284,8 +379,12 @@ def fin_flutter_analysis(
         )
     if see_graphs:
         _flutter_plots(flight, flutter_mach, safety_factor, filename=filename)
-    else:
-        return flutter_mach, safety_factor
+
+    # Always return the computed results so callers can use the flutter margin
+    # programmatically. These are safety-critical numbers and must never be
+    # silently discarded (they were previously only returned when
+    # ``see_graphs=False`` and otherwise only logged at INFO level).
+    return flutter_mach, safety_factor
 
 
 def _flutter_mach_number(
@@ -428,18 +527,21 @@ def _flutter_prints(
     min_sf = safety_factor[time_index, 1]
     altitude_min_sf = flight.z(time_min_sf) - flight.env.elevation
 
-    print("\nFin's parameters")
-    print(f"Surface area (S): {surface_area:.4f} m2")
-    print(f"Aspect ratio (AR): {aspect_ratio:.3f}")
-    print(f"tip_chord/root_chord ratio = \u03bb = {lambda_:.3f}")
-    print(f"Fin Thickness: {fin_thickness:.5f} m")
-    print(f"Shear Modulus (G): {shear_modulus:.3e} Pa")
-
-    print("\nFin Flutter Analysis")
-    print(f"Minimum Fin Flutter Velocity: {min_vel:.3f} m/s at {time_min_mach:.2f} s")
-    print(f"Minimum Fin Flutter Mach Number: {min_mach:.3f} ")
-    print(f"Minimum Safety Factor: {min_sf:.3f} at {time_min_sf:.2f} s")
-    print(f"Altitude of minimum Safety Factor: {altitude_min_sf:.3f} m (AGL)\n")
+    # This is an explicit, opt-in report (gated on ``see_prints``), so it uses
+    # print() to display unconditionally rather than logging.info, which is
+    # silenced by default.
+    print(
+        f"Fin's parameters: Surface area (S)={surface_area:.4f} m2"
+        f" | AR={aspect_ratio:.3f} | \u03bb={lambda_:.3f}"
+        f" | Thickness={fin_thickness:.5f} m"
+        f" | Shear Modulus (G)={shear_modulus:.3e} Pa"
+    )
+    print(
+        f"Fin Flutter Analysis: Min flutter velocity={min_vel:.3f} m/s"
+        f" at t={time_min_mach:.2f} s | Min flutter Mach={min_mach:.3f}"
+        f" | Min safety factor={min_sf:.3f} at t={time_min_sf:.2f} s"
+        f" | Altitude of min safety factor={altitude_min_sf:.3f} m (AGL)"
+    )
 
 
 def apogee_by_mass(flight, min_mass, max_mass, points=10, plot=True):
@@ -477,6 +579,9 @@ def apogee_by_mass(flight, min_mass, max_mass, points=10, plot=True):
         Function object containing the estimated apogee as a function of the
         rocket's mass (without motor nor propellant).
     """
+    # Imported lazily to avoid a circular import (Flight imports utilities).
+    from .simulation.flight import Flight  # pylint: disable=import-outside-toplevel
+
     rocket = flight.rocket
 
     def apogee(mass):
@@ -547,6 +652,9 @@ def liftoff_speed_by_mass(flight, min_mass, max_mass, points=10, plot=True):
         Function object containing the estimated liftoff speed as a function of
         the rocket's mass (without motor nor propellant).
     """
+    # Imported lazily to avoid a circular import (Flight imports utilities).
+    from .simulation.flight import Flight  # pylint: disable=import-outside-toplevel
+
     rocket = flight.rocket
 
     def liftoff_speed(mass):
@@ -605,7 +713,7 @@ def get_instance_attributes(instance):
     return attributes_dict
 
 
-def save_to_rpy(flight: Flight, filename: str, include_outputs=False):
+def save_to_rpy(flight: "Flight", filename: str, include_outputs=False):
     """Saves a .rpy file into the given path, containing key simulation
     informations to reproduce the results.
 
diff --git a/tests/acceptance/test_bella_lui_rocket.py b/tests/acceptance/test_bella_lui_rocket.py
index bcfe325bc..54db9abac 100644
--- a/tests/acceptance/test_bella_lui_rocket.py
+++ b/tests/acceptance/test_bella_lui_rocket.py
@@ -6,7 +6,14 @@
 import numpy as np
 from scipy.signal import savgol_filter
 
-from rocketpy import Environment, Flight, Function, Rocket, SolidMotor
+from rocketpy import (
+    Environment,
+    Flight,
+    Function,
+    HemisphericalParachute,
+    Rocket,
+    SolidMotor,
+)
 
 mpl.rc("figure", max_open_warning=0)  # Prevent matplotlib warnings
 
@@ -67,6 +74,7 @@ def test_bella_lui_rocket_data_asserts_acceptance():
         type="Reanalysis",
         file="data/weather/bella_lui_weather_data_ERA5.nc",
         dictionary="ECMWF",
+        pressure_conversion_factor="hPa",
     )
     env.max_expected_height = 2000
 
@@ -131,7 +139,7 @@ def drogue_trigger(p, h, y):
         # activate drogue when vz < 0 m/s.
         return True if y[5] < 0 else False
 
-    BellaLui.add_parachute(
+    drogue = HemisphericalParachute(
         "Drogue",
         cd_s=parameters.get("CdS_drogue")[0],
         trigger=drogue_trigger,
@@ -139,6 +147,7 @@ def drogue_trigger(p, h, y):
         lag=parameters.get("lag_rec")[0],
         noise=(0, 8.3, 0.5),
     )
+    BellaLui.add_parachute(parachute=drogue)
 
     # Define aerodynamic drag coefficients
     power_off_drag_by_mach = Function(
diff --git a/tests/acceptance/test_ndrt_2020_rocket.py b/tests/acceptance/test_ndrt_2020_rocket.py
index 7874ee164..cd03b0012 100644
--- a/tests/acceptance/test_ndrt_2020_rocket.py
+++ b/tests/acceptance/test_ndrt_2020_rocket.py
@@ -3,7 +3,7 @@
 import pytest
 from scipy.signal import savgol_filter
 
-from rocketpy import Environment, Flight, Rocket, SolidMotor
+from rocketpy import Environment, Flight, HemisphericalParachute, Rocket, SolidMotor
 
 
 @pytest.mark.parametrize(
@@ -83,6 +83,7 @@ def test_ndrt_2020_rocket_data_asserts_acceptance(env_file):
         type="Reanalysis",
         file=env_file,
         dictionary="ECMWF",
+        pressure_conversion_factor="hPa",
     )
     env.max_expected_height = 2000
 
@@ -154,7 +155,7 @@ def main_trigger(p, h, y):  # pylint: disable=unused-argument
         # activate main when vz < 0 m/s and z < 167.64 m (AGL) or 550 ft (AGL)
         return True if y[5] < 0 and h < 167.64 else False
 
-    NDRT2020.add_parachute(
+    drogue = HemisphericalParachute(
         "Drogue",
         cd_s=parameters.get("cd_s_drogue")[0],
         trigger=drogue_trigger,
@@ -162,7 +163,7 @@ def main_trigger(p, h, y):  # pylint: disable=unused-argument
         lag=parameters.get("lag_rec")[0],
         noise=(0, 8.3, 0.5),
     )
-    NDRT2020.add_parachute(
+    main = HemisphericalParachute(
         "Main",
         cd_s=parameters.get("cd_s_main")[0],
         trigger=main_trigger,
@@ -170,6 +171,8 @@ def main_trigger(p, h, y):  # pylint: disable=unused-argument
         lag=parameters.get("lag_rec")[0],
         noise=(0, 8.3, 0.5),
     )
+    NDRT2020.add_parachute(parachute=drogue)
+    NDRT2020.add_parachute(parachute=main)
 
     # Flight
     rocketpy_flight = Flight(
diff --git a/tests/fixtures/environment/environment_fixtures.py b/tests/fixtures/environment/environment_fixtures.py
index 818f434c7..5a3f3cd64 100644
--- a/tests/fixtures/environment/environment_fixtures.py
+++ b/tests/fixtures/environment/environment_fixtures.py
@@ -111,6 +111,7 @@ def environment_spaceport_america_2023():
         type="Reanalysis",
         file="data/weather/spaceport_america_pressure_levels_2023_hourly.nc",
         dictionary="ECMWF",
+        pressure_conversion_factor="hPa",
     )
 
     env.max_expected_height = 6000
diff --git a/tests/fixtures/monte_carlo/stochastic_fixtures.py b/tests/fixtures/monte_carlo/stochastic_fixtures.py
index 6610666cf..94490ce77 100644
--- a/tests/fixtures/monte_carlo/stochastic_fixtures.py
+++ b/tests/fixtures/monte_carlo/stochastic_fixtures.py
@@ -240,8 +240,8 @@ def stochastic_calisto(
     rocket.set_rail_buttons(
         stochastic_rail_buttons, lower_button_position=(-0.618, 0.001, "normal")
     )
-    rocket.add_parachute(stochastic_main_parachute)
-    rocket.add_parachute(stochastic_drogue_parachute)
+    rocket.add_parachute(parachute=stochastic_main_parachute)
+    rocket.add_parachute(parachute=stochastic_drogue_parachute)
     return rocket
 
 
diff --git a/tests/fixtures/motor/tanks_fixtures.py b/tests/fixtures/motor/tanks_fixtures.py
index 88721966d..aba5f5a7e 100644
--- a/tests/fixtures/motor/tanks_fixtures.py
+++ b/tests/fixtures/motor/tanks_fixtures.py
@@ -499,7 +499,7 @@ def temperature(t):
 
     return MassBasedTank(
         name="Variable Density N2O Tank",
-        geometry=CylindricalTank(height=0.8, radius=0.06, spherical_caps=True),
+        geometry=CylindricalTank(height=0.8, radius_function=0.06, spherical_caps=True),
         flux_time=7,
         liquid=nitrous_oxide_non_constant_fluid,
         gas=nitrous_oxide_non_constant_fluid,
diff --git a/tests/fixtures/parachutes/parachute_fixtures.py b/tests/fixtures/parachutes/parachute_fixtures.py
index 9723cda8e..c74fab648 100644
--- a/tests/fixtures/parachutes/parachute_fixtures.py
+++ b/tests/fixtures/parachutes/parachute_fixtures.py
@@ -1,6 +1,6 @@
 import pytest
 
-from rocketpy import Parachute
+from rocketpy import HemisphericalParachute
 
 
 @pytest.fixture
@@ -52,7 +52,7 @@ def calisto_main_chute(calisto_main_parachute_trigger):
     rocketpy.Parachute
         The main parachute of the Calisto rocket.
     """
-    return Parachute(
+    return HemisphericalParachute(
         name="calisto_main_chute",
         cd_s=10.0,
         trigger=calisto_main_parachute_trigger,
@@ -77,7 +77,7 @@ def calisto_drogue_chute(calisto_drogue_parachute_trigger):
     rocketpy.Parachute
         The drogue parachute of the Calisto rocket.
     """
-    return Parachute(
+    return HemisphericalParachute(
         name="calisto_drogue_chute",
         cd_s=1.0,
         trigger=calisto_drogue_parachute_trigger,
diff --git a/tests/fixtures/rockets/rocket_fixtures.py b/tests/fixtures/rockets/rocket_fixtures.py
index 9cb3caa3c..55ebd7165 100644
--- a/tests/fixtures/rockets/rocket_fixtures.py
+++ b/tests/fixtures/rockets/rocket_fixtures.py
@@ -1,7 +1,7 @@
 import numpy as np
 import pytest
 
-from rocketpy import Rocket
+from rocketpy import HemisphericalParachute, Rocket
 
 
 @pytest.fixture
@@ -404,14 +404,18 @@ def prometheus_cd_at_ma(mach):
         position=0.273,
         sweep_length=0.066,
     )
-    prometheus.add_parachute(
+    drogue = HemisphericalParachute(
         "Drogue",
         cd_s=1.6 * np.pi * 0.3048**2,  # Cd = 1.6, D_chute = 24 in
         trigger="apogee",
+        sampling_rate=100,
     )
-    prometheus.add_parachute(
+    main = HemisphericalParachute(
         "Main",
         cd_s=2.2 * np.pi * 0.9144**2,  # Cd = 2.2, D_chute = 72 in
         trigger=457.2,  # 1500 ft
+        sampling_rate=100,
     )
+    prometheus.add_parachute(parachute=drogue)
+    prometheus.add_parachute(parachute=main)
     return prometheus
diff --git a/tests/fixtures/surfaces/surface_fixtures.py b/tests/fixtures/surfaces/surface_fixtures.py
index c48627478..3819595dc 100644
--- a/tests/fixtures/surfaces/surface_fixtures.py
+++ b/tests/fixtures/surfaces/surface_fixtures.py
@@ -1,11 +1,14 @@
 import pytest
 
 from rocketpy.rocket.aero_surface import (
+    EllipticalFin,
     EllipticalFins,
+    FreeFormFin,
     FreeFormFins,
     NoseCone,
     RailButtons,
     Tail,
+    TrapezoidalFin,
     TrapezoidalFins,
 )
 
@@ -69,6 +72,29 @@ def calisto_trapezoidal_fins():
     )
 
 
+@pytest.fixture
+def calisto_trapezoidal_fin():
+    """A single trapezoidal fin based on Calisto dimensions.
+
+    Returns
+    -------
+    rocketpy.TrapezoidalFin
+        A single trapezoidal fin.
+    """
+    return TrapezoidalFin(
+        angular_position=0,
+        span=0.100,
+        root_chord=0.120,
+        tip_chord=0.040,
+        rocket_radius=0.0635,
+        name="calisto_trapezoidal_fin",
+        cant_angle=0,
+        sweep_length=None,
+        sweep_angle=None,
+        airfoil=None,
+    )
+
+
 @pytest.fixture
 def calisto_trapezoidal_fins_custom_sweep_length():
     """The trapezoidal fins of the Calisto rocket with
@@ -130,6 +156,23 @@ def calisto_free_form_fins():
     )
 
 
+@pytest.fixture
+def calisto_free_form_fin():
+    """A single free-form fin based on Calisto-like dimensions.
+
+    Returns
+    -------
+    rocketpy.FreeFormFin
+        A single free-form fin.
+    """
+    return FreeFormFin(
+        angular_position=0,
+        shape_points=[(0, 0), (0.08, 0.1), (0.12, 0.1), (0.12, 0)],
+        rocket_radius=0.0635,
+        name="calisto_free_form_fin",
+    )
+
+
 @pytest.fixture
 def calisto_rail_buttons():
     """The rail buttons of the Calisto rocket.
@@ -157,3 +200,23 @@ def elliptical_fin_set():
         airfoil=None,
         name="Test Elliptical Fins",
     )
+
+
+@pytest.fixture
+def calisto_elliptical_fin():
+    """A single elliptical fin based on Calisto-like dimensions.
+
+    Returns
+    -------
+    rocketpy.EllipticalFin
+        A single elliptical fin.
+    """
+    return EllipticalFin(
+        angular_position=0,
+        span=0.100,
+        root_chord=0.120,
+        rocket_radius=0.0635,
+        cant_angle=0,
+        airfoil=None,
+        name="calisto_elliptical_fin",
+    )
diff --git a/tests/fixtures/utilities/flight_calisto_robust.rpy b/tests/fixtures/utilities/flight_calisto_robust.rpy
index 74da896cb..3149e43b4 100644
--- a/tests/fixtures/utilities/flight_calisto_robust.rpy
+++ b/tests/fixtures/utilities/flight_calisto_robust.rpy
@@ -1,6 +1,6 @@
 {
-  "date": "2025-03-28",
-  "version": "1.8.0",
+  "date": "2026-05-07",
+  "version": "1.12.1",
   "simulation": {
     "rocket": {
       "radius": 0.0635,
@@ -12,23229 +12,10154 @@
       "I_13_without_motor": 0,
       "I_23_without_motor": 0,
       "power_off_drag": {
-        "source": [
-          [
-            0.01,
-            0.333865758
+        "source": "6643514321473560506f303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32315050512632544b343b3038306c3b31347c505f36714e79263030494473325964706e3052523931303030307d30462b4c4a6c716f3254323437297061413b77616a30496d7d57707256626a3041304156602139263331347a246432566c50574f497e5e3374773c2962596f7e3d61242436336c23425e7164307d5e3761242436336c23427b7261264b26475576676e7c57743451336a367041475a2a363553593b62613662592a69644c7d686270625a3e416b5167333578577071245e4648267a7e59686070246360744872567b32747d61437439735a29306d5e625434766d567b32747d455e7639326a307c6d495660794a406124235f41577062325e47673544335968607055557465722a56507321265a29306d5e6259456e3056507b607362394f457e593b522a3e593b21263f5a44435f2a5577336b3061427958456c755a78604c6c357c5830507a7734372442656f6c59593c3b433671247c6c23423e746239505e35622337796e675f4a33446c7630237161264b64365770723f50455e3d3e55596860705561264b643657706f4e285575303d78625945577a586331306d3045605340567b26432d6259292a2d576f2647656c61782b7b6c763024316c7973432a6c7a6f28616c716966335574654b765a667c7339625a4b764862363b5053655579773055746529605651672b3b5a446e36796c7850786c684c6d45413278345f3c593b3c5845624369712b584a76464062615a6c2a6c61213145574e423c7b6c2342266d574e423c7b6c2360543c32772174246259584f4b612b474b246a3062614e6259584f4b612b48266c686d3d79335864487c55566058653f557440313e62592a5549624369723561264b64365770723f50455e543353586d786148593b214a566223377948583e563f6e6a30693f605a657728355a2a472a366c71724666655576445332364a7a3961247b77625861497e32557440412a565255362a565243587c64366269734432785f7662217e3859453f3b41426125433d5562213e454c565243587c6436624c7b5576677a2a5a2a46735261263d3e4c6c2360543c31235765316143777842325831367861266c704c6c2360543830454c753830622d50676c716746394f554f2443684c6d564d6a3049244c64326e54766c61213143573b6d3349683d2d493f6c71674642697e26353950454a6c727c4e7343304f3840603d7c3452554c6c7779664f6644385a74646c61726d3b642b45573b5a4f485f34716e7769646c61726d3b642b216d62294a6f42564d70304e78455f563b514d6a487a61775e73307451677571646c61726d3b642d50242952384c3d2531474b6a6e77676f496e564733533b494d51484f4765733178455f563b514d6a25404c6a393b527b7849343c3e607d4e4c68336d304465297a684a6569596832646c61726d3b642d3c60516f3e567d72316a5a39336648343e4a716f7521343c774a4f6f7a7e65756e77676f496e56477069514f6f4f3c5a4d664d23444f60606a5e286565517a65664d4f696b734f2378455f563b514d6b54386136563e2543346b764b713b4e65372a513342636c476d5a314f4a3e3c573e607d4e4c68336d6d5437384067555f2958624147637a2b594763265f4b41556443373979692550646c61726d3b643b6242463f6b3b247452644d79217d5461216b48573d3259446023776a74247641336648343e4a71704a5e3b4f256366762d3b5253516e2828343e7275212a4055746665326b463e396e77676f496e56484579314d645f4b6466333d4d3b642649564e382170704a724a7e417b4b286970444f60606a5e2866336748565f2631652141457b61586b7678716a316558706a6575715e7b6d294778455f563b514d6b404f47215677455247603e44303030303030303757472664613e386b6429587a713b4e65372a513378736738285248716c28782b4e61313d457531433e375955663c6a66717e64523e607d4e4c68336e426a353c49707b4259445f416b48596d52542377517d3d6734666e66704f534247637a2b5947632867614c532a4d416d756c45512a51305066336649233d2336376f3655315a6f6c646c61726d3b643c30526576687451267c63552d414246327478457c46255a267c59693e7b2d7d39217d5461216b48586249544b704147745830405157406374295740677175737b2a4626347050605a336648343e4a71702939476c543b71356c60345a753144637c367433346c74527a2650757552784c516e2828343e72765130215f395f4f3e604b405f5f392447422175386c634e74633d5721622358616e77676f496e5648213f62745664634766434a234a71702a4f6136515e545f404d3d514b3174583d3b642649564e3823452843535667233c344d3e2a683369716339293b554b4f2a262d5842315f6d6d444f60606a5e286670775043737e337b21477c4526434a5a71252a403c424977716772633243247061586b7678716a32336e297921323c6a2341685e36737c7c25644b424a3276537c316f4d5e404e4278455f563b514d6c65653b5f774b3c716776514d542376255f437c75745e5a7928717e7228663756303030303030303760575a7a767c5652627c2a65516e2828343e72766f386e437d784176756f4874713b4e65372a51344d2b4e4a582b55234224675f5f392447422175382d6b6a6f406d4b6a285854584e61313d45753144634e504b79535a36403d4a376e77676f496e5649317e286d5136692658643f623e607d4e4c68336e787a594961394a467b4963284a71702a4f613652486234463054584d7a7a3e4b6b48596d525423773e4536357e594c377375453f3b642649564e3823633e76343e2b24764477255e47637a2b5947632935713871756852395f607061683369716339293b7353643933714d4b3f4229382a5130506633664a523530287a6f714c4b406a57444f60606a5e28663e2628715a75534b7b444174646c61726d3b643c6d6874763c6d2651415e6f4226434a5a71252a5e434a5932566b54674a732132414246327478457c237b21654c385f3f53523d6f61586b7678716a32527635522a3f36726b265938217d5461216b485930592b76755a4e244768312d36737c7c25644b42684160303d7e6b597d3f73435740637429574068463b7545377d727842535e5a78455f563b514d6c246d21234935732d7d63212a336648343e4a717156504f57667661677a6e6974542376255f437c756031527a3839714428325a67753144637c367433712378774738382629774e5330303030303030384a657452596f386347634e47516e2828343e72763d4721753f3c51394c3f4533713b4e65372a51346b5e6174732578215e474a3f5f39244742217539417375406d657059724e53254e61313d4575314421564564392d6936313353726e77676f496e56495137533c4d4b6b787e7468673e607d4e4c68336e7d2a76426052384a714f78394a71702a4f613652666a4d357960747a686340796b48596d52542378454d2523364e494c25214e533b642649564e3823217d60507e7e36237e49727b47637a2b5947632954797125643d3b4e5f453e6d683369716339293b5e616773412d6926285061482a5130506633664a70444f736f795a51214c792b444f60606a5e2867453d4b415539392a6f574c64646c61726d3b643c3b705035564b2855457c7a3826434a5a71252a5e615262507670583c33384f23414246327478457d3334582156283f257948643661586b7678716a327025326e455938687a6a3036217d5461216b48594f6741375e3d40366538623036737c7c25644b422849553f46254f334f332b4257406374295740686460465e7b7742334553583578455f563b514d6d3375714b7376403334717e30336648343e4a71717458617b386321325f406e60542376255f437c764a394c756c4d6d3343694c3e753144637c3674333f2d36563f7c583332293b2b3030303030303038686d6777783646326f265424444f60606a5e2867515e5259332a313229583178516e2828343e7277444f4339676e2d3277767173646c61726d3b643c7e745f38666476326d7c496e713b4e65372a51342d31584273586332266d3e6926434a5a71252a5e6d56483b38484f32546b57635f3924474221753959215850417a7d21373d4151414246327478457d463869585e332841733652414e61313d45753145316456437d3934415e716b2a61586b7678716a32232a393d712a357935725f516e77676f496e56496f4642522a37663e427b436d217d5461216b4859616b2137704873733c50256b3e607d4e4c68336f4d407031662b34606b4c6c4836737c7c25644b425f4d533634562629605239684a71702a4f61365225727065387a294a386b41615740637429574068707e476671433643732a625f6b48596d52542378635540715f3e6c356b4b5a5878455f563b514d6d4679427851363658655a60423b642649564e38243236652d453b7b4c4a3b4f5a336648343e4a71712862306a763751323e496e6447637a2b594763297229687a4f4e46246c264561542376255f437c7656445e704c613e332834675f683369716339293c4869735074482826237e6e7b753144637c367434333e54444b627d36605351682a5130506633664a3e4c41505f6c7d2a4057646b303030303030303874713e5f6c783239423c6036444f60606a5e2867637c786d662a212b67617335516e2828343e72775053524f547c4f3744655368646c61726d3b643d4278586d3e757025724e4359713b4e65372a51347d356e6d537354464261754c26434a5a71252a5e795a7b3b514748636c2b63265f392447422175396b2676774d58554248607065414246327478457d5243764043516f4558552b4f4e61313d4575314544686f657d35526c6461404761586b7678716a323e3c3145425128522b5176466e77676f496e5649214a3f3d294a4362393e7d4a217d5461216b48596d6f56333050333d564968503e607d4e4c68336f597b40604d3f79757d62375736737c7c25644b43365156445f737326402476644a71702a4f6136524076774c5a36434b5e783e68574063742957406824334234212375314f2828696b48596d525423786f5930363f3f44375659436478455f563b514d6d522476447d3f5f632d4740543b642649564e382445412b513f36674326312542336648343e4a71715f663f23744674426458262b47637a2b59476329253b6148497957594c772459542376255f437c7668482869754b4c7b433f763c683369716339293c546d496f64517d2a4a3c4e46753144637c367434465f416a65425660263870552a5130506633664b32504a2a565737573c63585630303030303030382875444e52316b3725627949444f60606a5e28677031264947492d3567366b3f516e2828343e72776257763f2926715058797958646c61726d3b643d4e2335606d39712865554377713b4e65372a5135413932447d28516d292b742626434a5a71252a5e3b6454322d6a647076764d755f39244742217539772b62733939633f363d7d53414246327478457d64477355644855645a7071264e61313d45753145506c37463e77704e7435437e61586b7678716a33324077394c652153254b6d7c6e77676f496e56493d4e502567494b73632b2678217d5461216b4859797360574c6d6949625079463e607d4e4c68336f6c30364d464f3432753c515936737c7c25644b43495559697535293743686f564a71702a4f613653347a2943537b28566b5f633557406374295740683f37724d24692b3e3e413d666b48596d5254237821637b24425066766b4b787278455f563b514d6d6429427d25395378424235663b642649564e3824514535436a786f5f762b7a34336648343e4a7172366a7135422147624b42755247637a2b59476329403f43462d4a6445366d7c50542376255f437c76744c4d305e7c62393d2b697c683369716339293c6671414f4f78304f7c496354753144637c367434527d215031317c7756265a582a5130506633664b45544b3855325f5364726d4230303030303030385f794753682a6748477c3c6c444f60606a5e286723354e2a786a7c4f6d2a5175516e2828343e72776e615e3032506c6e60687861646c61726d3b643d5a283567494f49427746443d713b4e65372a51354d44483c386e7d3c784a727d26434a5a71252a5e7e6831216a5e3d2d235f36245f392447422175392b3d6678616340564b6d6043414246327478457d704b6e5254502b755f296d604e61313d457531456270367440294136434c337b61586b7678716a33457b4b48515e6d68597b67466e77676f496e564a31523043365846333c6c7670217d5461216b48593b77235545793f715761294a3e607d4e4c68336f78344f445171554e243d6f3436737c7c25644b4355593f6366606d30702346364a71702a4f613653472574415f674b243d4b6a4f574063742957406933426d433f522b71527271786b48596d525423783d676f326d2639695e41595078455f563b514d6d703b2b726c2b2867535826363b642649564e3824634939753d757e693e253b33336648343e4a7172496e4e33657a41714d5f684647637a2b5947632a34603d49723e322428473c68542376255f437c7628503c324c553c7c424b2a31683369716339293c72756d666021714c784a4577753144637c3674346532694f38346a6d5569476a2a5130506633664b51584f4a7625515f2d6f296c303030303030303030246b4a7e7c6c586b702b236c7973432562642a772a6a30235f30583e4d3f4a626150297b6c77466a4a32322a3255592b2d566756543d6f33557647374561434c4e5a55746734366c78525f356a31676137583e4e33376126547b4b5652554a345a654c254e6a3053394a5a653f4c7c6c2343487955754166376124235f39592b2d62315a2a455e2d6c23423e745a2a46735256517a476b6a304a5251625a6c6a6d6a314e3b7c565167563f4162323243565f7c477a612b48683c5574656924584a3247235a435f754d4f39367d2455746551235a2a587642574d353d265a4444437b557467333f504b4b303e337d31365e6223687e3655767a6e4a5774333c236a302368346223687e36524323625e6c2360543830666d254f6c23427e73557531373e5575303d2a557467333c30674d4d3c574e265240583e4f45674956666d3658675e423b675f4c4d50686d3c4877305a5968423066762d6c4e5170757e315e40746936737c7c25645731694636737c7c2564587a753739293b5e7378536c5f4936737c7c25645a61265e6e564666486e573b617839293b5e7378554e3621514d6577333e233b773336737c7c256462423f5a2a513050663362234c2b6e564666486e596c6b48542376255f44372d286f39293b5e7378567d483661364a6d777172674178514d6577333e256c295747637a2b59477338633736737c7c2564633b34265e28623741216f4021642a51305066336463574578455f563b514f477d3c6e564666486e614d786c644b39696c3b6d53574c542376255f44396b40604a71702a4f614c71727339293b5e7378587751533030303030304d497c4161364a6d777174484a7b3b642649564e367c6d2a514d6577333e284d6074217532527a6b4a334c6747637a2b594774296f5571697b56362a56387c4836737c7c2564656c45336833697163394052673f5e286237412171713d215740637429583458466e2a5130506633664469624e387825447547633f4f78455f563b5150404242437c722d695f3148677d6e564666486e627c292a336648343e4a3d234376644b39696c3b6f3369693e7275454b6831292b56542376255f44424d3549252a405170252d6c62354a71702a4f614e52213f753144637c367938362439293b5e73785a5863706b48596d52543b4424633030303030304e5f375478455f563b515124774d61364a6d777175405847437c722d695f323535393b642649564e387678336e564666486e632b587c514d6577333e297d353d336648343e4a3e6f7829217532527a6b4b235921644b39696c3b6f3f367447637a2b59477668796e3e7275454b6832755a6871697b56362a572a3761542376255f444339715436737c7c2564674d524e252a405170253b597e476833697163395f3272414a71702a4f614f4653345e286237412173527e7b753144637c367960723e5740637429583638532a39293b5e7378614c30212a5130506633673c73756b48596d52543c31546f4e3878254475494531683030303030304f26746278455f563b5152714c5561364a6d777176247b4f437c722d695f324072483b642649564e396a4d426e564666486e64767c35514d6577333e2a2b727c336648343e4a3f634d3f217532527a6b4c6f7c2b644b39696c3b7023732347637a2b594777564e763e7275454b6833687d7071697b56362a58757469542376255f44437c466236737c7c256468393e56252a405170253c4d6c4f6833697163395f3e47494a71702a4f6150323f435e286237412174466d34753144637c367a29477d57406374295836603f4039293b5e737862386d2b2a5130506633687a48246b48596d52543c3c40774e38782544754a316e7030303030303050734934542376255f444458643078455f563b515364297c36737c7c2564686b445f61364a6d77717771683f252a405170253c773c3c437c722d695f3325462a683369716339605164263b642649564e41572a234a71702a4f61506445796e564666486e656a69765e286237412174703d73514d6577333e2b77476e753144637c36214a656b336648343e4a40502b6857406374295837574665217532527a6b4d636a6239293b5e737862693e59644b39696c3b717048552a51305066336943665247637a2b594778492d4f6b48596d52543d50474c3e7275454b6834566b494e38782544754a623f4671697b56362a5969494230303030303051356738542376255f44442a233478455f563b51533f383136737c7c2564687c627d61364a6d777178332860252a405170253d414340437c722d695f3447643c6833697163396021232b3b642649564e412a38284a71702a4f61503e63246e564666486e657b297a5e286237412175334477514d6577333e2d396572753144637c362174246f336648343e4a4021396c57406374295837296469217532527a6b4d3d2a6639293b5e7378627b4563644b39696c3b723266592a5130506633696d255647637a2b5947787441536b48596d52543d7a65503e7275454b6834282b4d4e38782544754a3d464a71697b56362a5960674630303030303051662643542376255f44454c323878455f563b515452573536737c7c25646958213261364a6d77717865367e252a405170253d6b617b437c722d695f347123406833697163397b45323d3b642649564e424b572d4a71702a4f61515121296e564666486e665837255e286237412175646221514d6577333e2d6a2476753144637c3623373373336648343e4a5e445870574063742958384a236d217532527a6b4e51386a39293b5e737863576367644b39696c3b726325632a51305066336a30345a47637a2b5947793659576b48596d52543e4324543e7275454b68354a39514e38782544754b50644e71697b56362a5a56264a303030303030515e3547542376255f444576514378455f563b515423753936737c7c2564692b313661364a6d7771783f5633252a405170253d7c7a30437c722d695f3534327b6833697163397b6f515e3b642649564e4275753e4a71702a4f615123313b6e564666486e662a562a5e2862374121753e7a26514d6577333e2d7c337a753144637c3623685277336648343e4a5e6e767457406374295838753271217532527a6b4e21576e39293b5e73786329216b644b39696c3b723e34672a51305066336a61536447637a2b5947796777616b48596d52543e6e33583e7275454b68357458554e38782544754b7a235271697b56362a5a29354e30303030303030324f6762642a6b586c76302438323438377956507c454f58674d666f4a5a4c7b6c30454c756a4c3547776d4f39347942675f4c4d5769392464493030377d6e5f6a3f5872296a7848666a63482a3d2a2a7c684229233975652b43533868442d4f793f2b43536a3162504723482b434d603573353155412b43503579787b48316b2b434e676c513c62466b2a2a5e7e3f6b452926342a2a7b55733e793e537c2a2b304b567c47624b752a2a7c62545760514d752a2a7d756b7060537d3b2a2a5f4b3d42587379702a2a5f7055704a453c322a2a6049504130657a452a2a7c4a625362265a562a2b31617a5a245076392a67783e49436b4640562a6770674236622a58562a67726947767c61716a2a67724e3938544e6a3c2a677633486e784f54702a67724837233b734a4b2a67777738797328677a2a67747e2b437d7046482a6774434c542b404d702a67713048776f445e3d2a67786d5559602565552a6772794b3d4f266b472a6777515177406837522a67742d6375336759782a67745073766a79787e2a67736e51363b373b472a67765a5272744a3c3d2a67724662313029656f2a6776632152477a522a2a67774f7e68453f6f4a2a67727b5e6e666b263e2a6774683933563c5f372a6779453831247356372a6771793c3648777a782a6773373d575a786f372a677341606376416a4d2a67725a5a70576b2a2a2a67775f47525a29266f2a677676705f235160412a67785825322a5255552a67744f7b2a677e67592a6774503543626d5e262a6775253e364229423e2a67724060764e4f62542a6775576e594c4a65342a6773422d32414343752a6777296358314336682a6774415e4d3f662a382a67702a5a745a3745492a677132454d417b647d2a6776737b56407c517a2a6771513473443e57782a677475215e484428712a2a5e6b24714830314b2a2b30404040622a44362a2a7e7035213950283b2a2a7c49442a515347492a2b30547a4f4e2341292a2a5f3449505a4f717b2a2b314c7071676c74682a2b324f347957444b732a2a7e74713833444b612a2b30574c65473d64482a2a7b43253d34796f512a2a7b6933662a6d55362a2b30336e2b605a343b2a2a7e6c79525854526e2a2b30566c552d3d78282a2a7c6726377032332a2a2a7e21703e3f7e60252a2a60342826353037552a2a7b73243226755a4f2a2a7e242364535e57632b434e30376054443c4e2b43522a557a453442472b43545a2d38787a4d462b6472662a62452d3b702b6471563b7b513d4c3d2b646f584b34615a587e2b263f7e3e57586a6c772b26406b474c41594a782b265e3e3d257a4e574c2d394b70636e57405a692d3948456725502975752d616a385f64373d7e7c2d233d673e63706548693b36457b73762b44606c3b36497b5f57773b347c3b58695776706f49777e3b792a295a2b294065333b7929414337612433353c33454a63243f4f4f653c55647447312d627e693c55627b5e4b212a726b3c763b6375647b68566e3d3039667c452b4769303d3037297859333e4a323d526171646a3e4e242b3d52622d6872497b66593d52615757745f4c43673d30365f303f4c4535563d3037376f52434452643d3043774e56326053403d30426469594c6f68213d30385f674939747c283d30426826492b2330633d3037747c4b41525f333d3045582d30316770393d30374235624f3e6c433d30415441766273564c3d30353f65606f7b3f513c76296c426c7c4950653c763b5930763d49782a3c762a7a4f53666243643c76266074387a76512d3c76243d3049683549693c763b39315a344d6c373c762b50747b65233c433c76262342474f3839753c762862354b454b51603c762a475f54395f7b753c763b24626b3c40716c3c55677d7d67256c233b3c556831356254545a2a3c556747653d683e36333c556124545e23347c723c556a383b54382870693c5565344c48697159373c556a492b384c50324d3c5565356374323539743c5568344f775f7267563c55623b3238624161443c5561734676253f6e633c33462b376f705e5a473c33484e53506d4377503c33487d70293d28703d3c3344687532437228413c33477c464b3079335f3c33426d74472b405f683c334177424f467b636f3c334279383c645341553c33417d294b46247e7b3c33472a3e7451603e3b3c3346403150587c757e3c334146436b376d2a453b7928747737286257593b792b7164734c7236753b792d6d374760482d783b793c59265a3b7044553b79294823687e69303b3b793c2a5e23472b59263b792b4c3e77252930343b793f4e7177596651373b792939355e56624d583b792d495f392d7c674b3b793d5e7c3c41683d3e3b793c4f6c7a397341243b793f61675f413058713b7929217973303671413b58653d72366b7172313b586b344b384c6f354e3b5866746e7149345f463b58672174387d6c42243b58666225264a6a286e3b586c4642677958664a3b5867697a717e6c6e543b58673964667563326f3b58675f70352d763d323b586d405175483268763b5865403f45404c45473b58674e2329332956493b586567746c3124247d3b5869404343466678403b586a236d7176297c483b5866332636783028503b58676a79716a3835333b5865527a43773240353b586c5036577e2d77353b36463c2347306a51753b364c7229383d433e2d3b364a4e7c6073545e6c3b3649686f7a4943465f3b36497a483240697c483b364b7e4b48452942723b36454d7d7364744f343b3646234f68326626313b364c573c5f3d3f47763b364c4c773f3f333b473b36496b2860406368683b364937546d2b68387a3b36463d622b4b3e32613b364950734c347326753b364964666c756d5325516b3041626377623f316124244c7458674d666f4a5a4c7b6c30454c756a4c3547776d4f39347942675f4c4d5769392464493030345577753144637c67673c297d753144637c6c737e763068336971636f3c446d4f753144637c712837524f6e564666487358773f4c68336971637530514e6978455f563b757c496e68753144637c765f415e6871697b5636773f4353686e56466648786a216a666b48596d52796723406568336971637a4357614a4a71702a4f7a2834462178455f563b21394f214947637a2b5921237b667a753144637c233651464a437c722d6923586b7a7971697b5636243349664939293b5e7324556d42796e56466648247640244736737c7c2525304453776b48596d5225732b3847336648343e257c4579766833697163264f5a50453030303030265f4153624a71702a4f265f373777644b39696c284c647d5f78455f563b284c6179455e28623741286d796a5a47637a2b59283f38647661364a6d77283f354640753144637c29495434453e7275454b296a7a7d61437c722d69296a7775745740637429293b7c694071697b56362a465561443b642649562a4652465939293b5e732a67793674542376255f2a67752b3f6e564666482a2a6072422a513050662b43536c5836737c7c252b43505173514d6577332b646e423e6b48596d522b267c3643252a4051702b265e2857336648343e2d394871724e387825442d616f683d68336971632d616c4e41217532527a2d232d385630303030303b3647426839293b5e733b364a32724a71702a4f3b364c5e23542376255f3b3646263d644b39696c3b586a28306e564666483b586d774178455f563b3b5867654a2a513050663b793b68565e286237413b793e596636737c7c253b792a4a7047637a2b593c33454d23514d6577333c3348443c61364a6d773c33417d7d6b48596d523c55657e39753144637c3c55685e4b252a4051703c556223553e7275454b3c76282366336648343e3c762b7671437c722d693c7624647a4e387825443d3039643b57406374293d3043557c68336971633d30364a3871697b56363d52614a4a217532527a3d526441543b642649563d5257606430303030303d73217d7039293b5e733d73253d7a4a71702a4f3d7329252d542376255f3d7321727c644b39696c3d7c3773386e564666483d7c416a4978455f563b3d7c3452522a513050663e4f5955645e286237413e4f624c6e36737c7c253e4f56367847637a2b593e707a392d514d6577333e7024307b61364a6d773e70762d366b48596d523e5f322d48753144637c3e5f352553252a4051703e5e7e6f633e7275454b3f4c546f6e336648343e3f4c576979437c722d693f4c51512a4e387825443f6d75516057406374293f6d78493568336971633f6d72364771697b56363f3e7d3652217532527a3f3f307c623b642649563f3e5f286c303030303040494e56426b48596d5240494f2b7839293b5e734049514d4c753144637c4049527a2a4a71702a4f4049544757252a405170404955715f542376255f40494e31673e7275454b406a706f36644b39696c406a723172336648343e406a7366476e56466648406a746024437c722d69406a76575178455f563b406a6e213c4e38782544403b5e4e612a51305066403b5f217e5740637429403b7b486c5e28623741403b7c73396833697163403b7e387636737c7c25403b3f674b71697b56365e464b322947637a2b595e464c6756217532527a5e464d7b5f514d6577335e464f58663b642649565e46503c3461364a6d775e4649497030303030305e676b28466b48596d525e676d4c2339293b5e735e676e7750753144637c5e6770433c4a71702a4f5e67717161252a4051705e6773337d542376255f5e676b626b3e7275454b5e2a3e3141644b39696c5e2a3f6276336648343e5e2a40404b6e564666485e2a5f5629437c722d695e2a60295578455f563b5e2a3c44404e387825445f434778652a513050665f4349453357406374295f434a72705e286237415f434c354468336971635f434d697a36737c7c255f43455e4f71697b56365f6468633b47637a2b595f64695e5a217532527a5f646b577d514d6577335f646c2a6a3b642649565f646e4f3861364a6d775f6466737430303030305f262b494a6b48596d525f262d762839293b5e735f263c3954753144637c5f263d6d404a71702a4f5f263f3365252a4051705f26406532542376255f5f262a3c6f3e7275454b6039446245644b39696c6039453c7a336648343e603947534f6e56466648603948283b437c722d6960394a4a5978455f563b6039426e7b4e3878254460616541692a513050666061666f37574063742960616834745e286237416061696648683369716360616a602536737c7c25606163545371697b56366023263d3f47637a2b596023295464217532527a60232a2a32514d65773360232d4b6e3b6426495660233b794361364a6d77602325357830303030307b3638734e6b48596d527b3641382d39293b5e737b36426a58753144637c7b36437e7b4a71702a4f7b36456469252a4051707b36463f36542376255f7b36384f733e7275454b7b58613c49644b39696c7b58634f25336648343e7b586424536e564666487b5866493f437c722d697b5867746378455f563b7b585a31304e387825447b79236b6d2a513050667b7925314257406374297b792665785e286237417b7928404c68336971637b792a562a36737c7c257b797a255771697b56367c3335506047637a2b597c33362568217532527a7c33384b36514d6577337c333975723b642649567c3342424761364a6d777c33336623303030303030363e263c6c756d5325516b3041646377634635583e40357d593f4e705e6a3053554b565167563f6c236054624e4a39764636737c7c256457316965684c6c70326a3062704d574026433d593f4e717958683d667b303030303030303030246c216c61326c23423b3f5574777d60565240386a4956666d3658675e423b675f4c4d50686d3c4877305a59682a6c785271614c4f3d2170304f332366646b24584a4b58736d73583c3c6a254b584e4d373b3b62306a4b68252a63342434547b4b6a35252a33726a7d594b534b53654758357e794b59735953692b26575e4b545e557c6d384139414b4d793332732d34215e4b542a723b6d324a34244b6667782a796f2349494b5835297e6668423c314b6124733e70472329684b4e634721626f666f234b4f6a3176566a6566794b51566239412a3e3c554b57613d5e66517d383e4b6a375f654b287153544b6b263042324d3669634b4c68552b34534c77764b52706e25554872287b4b513c353c5f497c71394b6348426570214b5a534b5173603d7479477d634b6844642575236c41344b5a356024577575444e4b57675628287d3938354b4e3338294f65313b4e4b6a2b41377a4a5950724b53455e5a43594e67314b67327a5e4f6b4848794b596f767b55433e5f474b577c7948313f2a59614b55287d31504f4d65664b64533c213f473934644b516e7b5f426f523b384b646442467030475e564b667d243252715255474b53604946606f632d724b586f507766484f28684b6c715e71644f6b5f6d4b5046256b507e2544314b545347682d792521634b5462622a51764f57584b525043232d2a212a664b683f7d745149316d424b65417d7d3921464e234b6a514552216c5051294b5760747b4c5a4048594b5760607c777043403d4b62593f6d384d4142484b53294b6747734a53284b614a704f6b644175544b546541566d3d2551424b68697339783659483b4b576356494b727937294b4d656b3f582d3269214b4e3930612b38342a7a4b65327e6e504f3b68384b4e606066683932244d4b5936563451392552514b4c55453959433b3b3e4b686b30465f435965294b646e42264b542538424b5758334272687b654b4b662b3b346974547b654b4d3c326f36512d546e4b696c597c533b7845434b6c7426782b2d25237e4b64212b55306b7b30774b665e6545363573614f4b5446295e594a7e33444b554f7d3139562b4a384b654042717a30636a2a4b6464324449284636424b663f5741603565764a4b584d4567724e684d384b647d3f2b454e695e6b4b503e267469347748674b55764b50736b2a44234b65355372584655686e4b535a6563606f4368404b675e383250655a3d694b6c24416f36555130624b63707e6f732144612b4b5a4c304c306e6743654b544e432a2435536c614b52256d6525476968384b545a3256784c7844694b58656277642a6552634b574f2174736d7957524b4c60634f464e677d3e4b4f626a237137292b454b565474763974742b234b51574b393e6a7e54374b6362396678437779614b5855714067245836254b534f425451564769394b4e4870244150487e644b5a4d69433e3c4152284b55467e6d78284b3d434b5039677e6858604b664b6c553761523073702b4b57373e2941716334454b5231594a3f677666684b5743565a234b41473d4b5a2b21216e495259464b56613e79324f3c36444b4f5664374a2d58784f4b4f3b553d624c713c464b667930786b452a69664b63326a356c6c7124474b55595e63546840632d4b634654246d5e2a46654b516d347e6e3c7251314b6b3c5942346950602a4b4f7c2a7a32787571664b59744968783c557d3c4b4c4d2d79237c5a69354b5a7070474b4648775a4b6c47356135657621584b6441497271522b41414b55256a4e434b6133494b4f68687d6c2d59236b4b6b502870346a6761674b653c405f6757466c3c4b5543263273756f34254b574b4d387a737859404b626b73506d40674c504b6d4d7a63294f592a6a4b654b793c366538697c4b65517d2347417a67424b623b5a682a5e7b6d304b4c656f6a7c356c58624b6b71624a6a644f65434b56586e4868556134424b6b7c656274466350744b566248264774655e524b65617824555f6c243f4b4f2478744b6d2d4b6a4b4c397c7021787275314b6536314d637a442b314b6962476f6a333e62334b6b6d216350245231324b58395a35755746527a4b6868614b4b3e55383d4b524d626f564170426d4b4f6f30544c486b74574b527560396c34647e544b5067513c264b4e413f4b68365a4b39543644674b65513d4e32547567214b4e356b4458335f42434b4c2925514b625049264b5521362626593b54544b586e3e3378397170234b64422a616a28566c794b4e6568773b7a5e55404b6557756d71464936424b54737e562d6c3d636d4b6c264837786a4130714b4e45574d2a396341474b576c3672715a547e6b4b6879407d676b6d653d4b6326334243467e6d464b6d4b3021447a6767574b503560323168404c284b4d287b49552d233c614b63567b3e75353b56724b5042702d6253756f5e4b53583e525e422571374b4f677c6b356c7962294b662528333c46256a524b522440303c352d64354b516879537142566f7a4b537e6045453d2b61644b6b7e34792b3f217c4e4b4d402928563c634d504b5231216e77266849574b4c75757a4f793537404b595f6a5f3d56334a414b6264752d3d263e6c5f4b4e506e562944733d794b52283d7d61666344254b4c42776a625f40704c4b67417a7274445e65674b54396277257d4d587a4b6b6557666e2a7271444b64586c4e3d453e4f4c4b6236744762297744534b62787576347e7852214b696b344a5a2d636b734b4f506d53635a3b6d784b53217b493b693934374b6a21544369706947584b6a53763c4b6d5576314b624750397a65396f474b5a2865663f5572606e4b54426c566b4e3969674b61626c2566406f706a4b615f4e6f5049517a7e6c23425e5e55756b593e625a4b46316c785466754e4a39775750787048635565214f38684c6c70326a3062734e574026433d593f4e717958683d667b6b4a7e7c6c586b702b236c216c61326c234335245770725035565168367d55764640396c78503571335356712a565073212964326e54766c6121314b4f3d5761775a29382b3f61416c4e2a6c763023763077607a25435f407167343b5452243057626a3d305551413d307c6673703068434a754f386070254f3929457b4f394d6d706d6a48594b5935294b4c3030303030303030303030303030303030303030654641267b593631574e303030303030303030303030303030303030303065464a3b7c59364a69503030303030303030303030303030303030303030643b6e3f263030303030303030303030303030303030303030303034616a6546535e7d5936742954303030303030303030303030303030303030303065466c3634643b777a75636d6975303030343359643c41503730303433755a554f2d535a5777243359367d31573030303030303030303030303030303030303030643b78707d643c413f30643b402432737c456c3730303030306546754338517669476259374744593030303030303030303030303030303030303030643b78707d643c413f30643b402432737c456c373030303030654675433851766a34244e2678403e4d52733971627a795836416172504441567a673d567b7e62365a586a574641596d594c583e4d6e315767757b47583e4e324e6372474152586c5a6a475a446e2b355a29367e386230427164576e3e423c4152722868415272296a586b7e3637625a424b444d733b7075625a4b7648415a633f544629632863334a4d3f7e4152722868415274672d6124232a7b62592a674c334c71644c4152722868415432457c4569456c414569456b7941527228684152722868637079333b62374e735f565238787d415272286841527228684152722943565168367d4161606847612543574e586b7b51716223377948583e563e49583e255a535a793b6932415a322138593b7c4644576e3f5a32334c71644c415272286841577e263f6223695756334c71644c4152722868415432457c4569456c41334c71644c4152722868416242373c4161693433592b2d543d41527228684152722868415272286852242a2a295767755e36416172504441567a673d567b7e62365a586a57464161725044416169684b56602a6b2d576e3e5f355a297439484528237a5a41527228684152765e356c71684928586f594264586e7e3965557440312657406441676a31796d4a5a676764476142706d33625a4b764855754a627e57305a5e2655754166376124235f39592b2d62315a2a455e5e622337796e626429484a31616f433c577c574b70632441433d6377627e3b6259595a3f32363c6d2856525460586a304a644b5a45303f6c6a304a644b5a4444776e6a30522847576f426b606c2342732b6c797344674d6c5762405a446c575061425e5845577067683f57706974455a2a5656435a29306d5e62576e4c4f5167333578577071245e464c477e5659686071426360743259625a422a53583e343b5a575f353033625a4b7648455e7639326a31706738584a76463e6334324946576e58565f625943254b6c23436c6a6223377948583e563e5755746563736259464931593b7c517b5a2a582a39463d556959356425596966425e367730315f364c39465a4a7c32477c69356d6d484243687a386766383c26324f6578502978653425605a62252b4a6e35667a736c6b734f45792a62354d6c4c44554e236d3d29437639407232522a414f5674354762652d7337305f6678462a305224525e56655148566b43315e5e4864687a52666c30312a7c7d3547635f5144357723724d582975764363717d684365736a36682858763735517171725863513f6162642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59666750454b4060516a7e705e65557644533256592d675a293043796c7855723342374b782d4278745536684c6d447848484d54406c7855775f6c785521363077607a25435f40596130543d2d673054324e713055606d454f396f322d4f3860703f4f39563f334c7a3c5457624f38565730303030303030345867643b7148673030303030303034616b643b4024325743337e233030303e50303034616c643c312b335743337e233030303e50303034616d624f51685930303030303030345867643c47632b303034586b64497c736c737b734832303030303065463c7e7d30303030303030303030643c312b3338327c7450643c63333930303635323030303030303034616f643b6f6b3064497c736c643c754c43644a36796d6449624f67643c63327e3030325f7d6c756b3c6c684c6e73385672673f5f567b7e365e576f4334676a30492b465a2828246c684c6b3931712d64765473412332567266387b2a3356325e3e5a67676447633432496b6a30536a4c592d4d4a326c23422a3e55753c502662642d7a26574f24547d3025556f5662642b65556a312b38585a653f4c7c55756b5a3157705a2444592b2d62315a2a47297e4b5370284b567b7e62365a5a3250366237676432583e4e33376126547b4b5652554a345a654d307e5a65755079593b522a3e593b21263f592d77267e5652427a2d5a676764476142706d33625a4b76486c755a45774c7521426b2b244175753750747d39427c4466332a645a7356336230594234242662756d3c4847284323565872514b3d356d417663253f2b234d7049486d45416d42513e7d4e2849593c37395932403f2b234d7049486d45416d42513e7d4e2849593c37395932403f2a645155474d7868462a613c443f4663684d673d78462a70624b2b71554b6c78502477445268296c6c7729236c567b32747d614374366d5652554739625a4b6d4a4540704c5a567b7e62365a56462374574e426b60557462446e245742676c6c7630235e6c7a6f266158642d3d2d5865344f4b622576423b5872583856437d3b23494c6a6e513b6c7548496e303830512532315e313c364749404530444a265e30632123503043454c3c3159606a6a303030307d30444a5e773076507d5230383b3e7a50443d6e767c4e734330686d3c4b4f5872795354587342715658725e655862642b65556a32325e575a67585e445a67674b7c6379777d4d6142706d33625a4b76486c23443f7d6223377948583e563e575574653d2662594571376261472a455a297b3c37583e563e7b575f353033453c397b2b565f7c475f4a7d7a54235a67585e445a67674b7c6379777d4d6142706d33625a4b76486c75684f574c6d506b712a656f7275312a2544796341234f49644328587c7848694264786a4e376f4d552d6531444a675736516a7d77495a29306d5e625a7e68745a44446b31622321544c62317236655a657728355a2a42402d5575303d78625945577a587843306f62642a772a6555794561437d3c2a6d6c785153712a6d5a604b567326444e6c757c472a",
+        "title": null,
+        "inputs": [
+          "alpha",
+          "beta",
+          "mach",
+          "reynolds",
+          "pitch_rate",
+          "yaw_rate",
+          "roll_rate"
+        ],
+        "outputs": [
+          "Drag Coefficient with Power Off"
+        ],
+        "interpolation": null,
+        "extrapolation": null,
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846258036
+        }
+      },
+      "power_on_drag": {
+        "source": "6643514321473560506f303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32315050512632544b343b3038306c3b31347c505f36714e79263030494473325964706e3052523931303030307d30462b4c4a6c716f3254323437297061413b77616a30496d7d57707256626a3041304156602139263331347a246432566c50574f497e5e3374773c2962596f7e3d61242436336c23425e7164307d5e3761242436336c23427b7261264b26475576676e7c57743451336a367041475a2a363553593b62613662592a69644c7d686270625a3e416b5167333578577071245e4648267a7e59686070246360744872567b32747d61437439735a29306d5e625434766d567b32747d455e7639326a307c6d495660794a406124235f41577062325e47673544335968607055557465722a56507321265a29306d5e6259456e3056507b607362394f457e593b522a3e593b21263f5a44435f2a5577336b3061427958456c755a78604c6c357c5830507a7734372442656f6c59593c3b433671247c6c23423e746239505e35622337796e675f4a33446c7630237161264b64365770723f50455e3d3e55596860705561264b643657706f4e285575303d78625945577a586331306d3045605340567b26432d6259292a2d576f2647656c61782b7b6c763024316c7973432a6c7a6f28616c716966335574654b765a667c7339625a4b764862363b5053655579773055746529605651672b3b5a446e36796c7850786c684c6d45413278345f3c593b3c5845624369712b584a76464062615a6c2a6c61213145574e423c7b6c2342266d574e423c7b6c2360543c32772174246259584f4b612b474b246a3062614e6259584f4b612b48266c686d3d79335864487c55566058653f557440313e62592a5549624369723561264b64365770723f50455e543353586d786148593b214a566223377948583e563f6e6a30693f605a657728355a2a472a366c71724666655576445332364a7a3961247b77625861497e32557440412a565255362a565243587c64366269734432785f7662217e3859453f3b41426125433d5562213e454c565243587c6436624c7b5576677a2a5a2a46735261263d3e4c6c2360543c31235765316143777842325831367861266c704c6c2360543830454c753830622d50676c716746394f554f2443684c6d564d6a3049244c64326e54766c61213143573b6d3349683d2d493f6c71674642697e26353950454a6c727c4e7343304f3840603d7c3452554c6c7779664f6644385a74646c61726d3b642b45573b5a4f485f34716e7769646c61726d3b642b216d62294a6f42564d70304e78455f563b514d6a487a61775e73307451677571646c61726d3b642d50242952384c3d2531474b6a6e77676f496e564733533b494d51484f4765733178455f563b514d6a25404c6a393b527b7849343c3e607d4e4c68336d304465297a684a6569596832646c61726d3b642d3c60516f3e567d72316a5a39336648343e4a716f7521343c774a4f6f7a7e65756e77676f496e56477069514f6f4f3c5a4d664d23444f60606a5e286565517a65664d4f696b734f2378455f563b514d6b54386136563e2543346b764b713b4e65372a513342636c476d5a314f4a3e3c573e607d4e4c68336d6d5437384067555f2958624147637a2b594763265f4b41556443373979692550646c61726d3b643b6242463f6b3b247452644d79217d5461216b48573d3259446023776a74247641336648343e4a71704a5e3b4f256366762d3b5253516e2828343e7275212a4055746665326b463e396e77676f496e56484579314d645f4b6466333d4d3b642649564e382170704a724a7e417b4b286970444f60606a5e2866336748565f2631652141457b61586b7678716a316558706a6575715e7b6d294778455f563b514d6b404f47215677455247603e44303030303030303757472664613e386b6429587a713b4e65372a513378736738285248716c28782b4e61313d457531433e375955663c6a66717e64523e607d4e4c68336e426a353c49707b4259445f416b48596d52542377517d3d6734666e66704f534247637a2b5947632867614c532a4d416d756c45512a51305066336649233d2336376f3655315a6f6c646c61726d3b643c30526576687451267c63552d414246327478457c46255a267c59693e7b2d7d39217d5461216b48586249544b704147745830405157406374295740677175737b2a4626347050605a336648343e4a71702939476c543b71356c60345a753144637c367433346c74527a2650757552784c516e2828343e72765130215f395f4f3e604b405f5f392447422175386c634e74633d5721622358616e77676f496e5648213f62745664634766434a234a71702a4f6136515e545f404d3d514b3174583d3b642649564e3823452843535667233c344d3e2a683369716339293b554b4f2a262d5842315f6d6d444f60606a5e286670775043737e337b21477c4526434a5a71252a403c424977716772633243247061586b7678716a32336e297921323c6a2341685e36737c7c25644b424a3276537c316f4d5e404e4278455f563b514d6c65653b5f774b3c716776514d542376255f437c75745e5a7928717e7228663756303030303030303760575a7a767c5652627c2a65516e2828343e72766f386e437d784176756f4874713b4e65372a51344d2b4e4a582b55234224675f5f392447422175382d6b6a6f406d4b6a285854584e61313d45753144634e504b79535a36403d4a376e77676f496e5649317e286d5136692658643f623e607d4e4c68336e787a594961394a467b4963284a71702a4f613652486234463054584d7a7a3e4b6b48596d525423773e4536357e594c377375453f3b642649564e3823633e76343e2b24764477255e47637a2b5947632935713871756852395f607061683369716339293b7353643933714d4b3f4229382a5130506633664a523530287a6f714c4b406a57444f60606a5e28663e2628715a75534b7b444174646c61726d3b643c6d6874763c6d2651415e6f4226434a5a71252a5e434a5932566b54674a732132414246327478457c237b21654c385f3f53523d6f61586b7678716a32527635522a3f36726b265938217d5461216b485930592b76755a4e244768312d36737c7c25644b42684160303d7e6b597d3f73435740637429574068463b7545377d727842535e5a78455f563b514d6c246d21234935732d7d63212a336648343e4a717156504f57667661677a6e6974542376255f437c756031527a3839714428325a67753144637c367433712378774738382629774e5330303030303030384a657452596f386347634e47516e2828343e72763d4721753f3c51394c3f4533713b4e65372a51346b5e6174732578215e474a3f5f39244742217539417375406d657059724e53254e61313d4575314421564564392d6936313353726e77676f496e56495137533c4d4b6b787e7468673e607d4e4c68336e7d2a76426052384a714f78394a71702a4f613652666a4d357960747a686340796b48596d52542378454d2523364e494c25214e533b642649564e3823217d60507e7e36237e49727b47637a2b5947632954797125643d3b4e5f453e6d683369716339293b5e616773412d6926285061482a5130506633664a70444f736f795a51214c792b444f60606a5e2867453d4b415539392a6f574c64646c61726d3b643c3b705035564b2855457c7a3826434a5a71252a5e615262507670583c33384f23414246327478457d3334582156283f257948643661586b7678716a327025326e455938687a6a3036217d5461216b48594f6741375e3d40366538623036737c7c25644b422849553f46254f334f332b4257406374295740686460465e7b7742334553583578455f563b514d6d3375714b7376403334717e30336648343e4a71717458617b386321325f406e60542376255f437c764a394c756c4d6d3343694c3e753144637c3674333f2d36563f7c583332293b2b3030303030303038686d6777783646326f265424444f60606a5e2867515e5259332a313229583178516e2828343e7277444f4339676e2d3277767173646c61726d3b643c7e745f38666476326d7c496e713b4e65372a51342d31584273586332266d3e6926434a5a71252a5e6d56483b38484f32546b57635f3924474221753959215850417a7d21373d4151414246327478457d463869585e332841733652414e61313d45753145316456437d3934415e716b2a61586b7678716a32232a393d712a357935725f516e77676f496e56496f4642522a37663e427b436d217d5461216b4859616b2137704873733c50256b3e607d4e4c68336f4d407031662b34606b4c6c4836737c7c25644b425f4d533634562629605239684a71702a4f61365225727065387a294a386b41615740637429574068707e476671433643732a625f6b48596d52542378635540715f3e6c356b4b5a5878455f563b514d6d4679427851363658655a60423b642649564e38243236652d453b7b4c4a3b4f5a336648343e4a71712862306a763751323e496e6447637a2b594763297229687a4f4e46246c264561542376255f437c7656445e704c613e332834675f683369716339293c4869735074482826237e6e7b753144637c367434333e54444b627d36605351682a5130506633664a3e4c41505f6c7d2a4057646b303030303030303874713e5f6c783239423c6036444f60606a5e2867637c786d662a212b67617335516e2828343e72775053524f547c4f3744655368646c61726d3b643d4278586d3e757025724e4359713b4e65372a51347d356e6d537354464261754c26434a5a71252a5e795a7b3b514748636c2b63265f392447422175396b2676774d58554248607065414246327478457d5243764043516f4558552b4f4e61313d4575314544686f657d35526c6461404761586b7678716a323e3c3145425128522b5176466e77676f496e5649214a3f3d294a4362393e7d4a217d5461216b48596d6f56333050333d564968503e607d4e4c68336f597b40604d3f79757d62375736737c7c25644b43365156445f737326402476644a71702a4f6136524076774c5a36434b5e783e68574063742957406824334234212375314f2828696b48596d525423786f5930363f3f44375659436478455f563b514d6d522476447d3f5f632d4740543b642649564e382445412b513f36674326312542336648343e4a71715f663f23744674426458262b47637a2b59476329253b6148497957594c772459542376255f437c7668482869754b4c7b433f763c683369716339293c546d496f64517d2a4a3c4e46753144637c367434465f416a65425660263870552a5130506633664b32504a2a565737573c63585630303030303030382875444e52316b3725627949444f60606a5e28677031264947492d3567366b3f516e2828343e72776257763f2926715058797958646c61726d3b643d4e2335606d39712865554377713b4e65372a5135413932447d28516d292b742626434a5a71252a5e3b6454322d6a647076764d755f39244742217539772b62733939633f363d7d53414246327478457d64477355644855645a7071264e61313d45753145506c37463e77704e7435437e61586b7678716a33324077394c652153254b6d7c6e77676f496e56493d4e502567494b73632b2678217d5461216b4859797360574c6d6949625079463e607d4e4c68336f6c30364d464f3432753c515936737c7c25644b43495559697535293743686f564a71702a4f613653347a2943537b28566b5f633557406374295740683f37724d24692b3e3e413d666b48596d5254237821637b24425066766b4b787278455f563b514d6d6429427d25395378424235663b642649564e3824514535436a786f5f762b7a34336648343e4a7172366a7135422147624b42755247637a2b59476329403f43462d4a6445366d7c50542376255f437c76744c4d305e7c62393d2b697c683369716339293c6671414f4f78304f7c496354753144637c367434527d215031317c7756265a582a5130506633664b45544b3855325f5364726d4230303030303030385f794753682a6748477c3c6c444f60606a5e286723354e2a786a7c4f6d2a5175516e2828343e72776e615e3032506c6e60687861646c61726d3b643d5a283567494f49427746443d713b4e65372a51354d44483c386e7d3c784a727d26434a5a71252a5e7e6831216a5e3d2d235f36245f392447422175392b3d6678616340564b6d6043414246327478457d704b6e5254502b755f296d604e61313d457531456270367440294136434c337b61586b7678716a33457b4b48515e6d68597b67466e77676f496e564a31523043365846333c6c7670217d5461216b48593b77235545793f715761294a3e607d4e4c68336f78344f445171554e243d6f3436737c7c25644b4355593f6366606d30702346364a71702a4f613653472574415f674b243d4b6a4f574063742957406933426d433f522b71527271786b48596d525423783d676f326d2639695e41595078455f563b514d6d703b2b726c2b2867535826363b642649564e3824634939753d757e693e253b33336648343e4a7172496e4e33657a41714d5f684647637a2b5947632a34603d49723e322428473c68542376255f437c7628503c324c553c7c424b2a31683369716339293c72756d666021714c784a4577753144637c3674346532694f38346a6d5569476a2a5130506633664b51584f4a7625515f2d6f296c303030303030303030246b4a7e7c6c586b702b236c7973432562642a772a6a30235f30583e4d3f4a626150297b6c77466a4a32322a3255592b2d566756543d6f33557647374561434c4e5a55746734366c78525f356a31676137583e4e33376126547b4b5652554a345a654c254e6a3053394a5a653f4c7c6c2343487955754166376124235f39592b2d62315a2a455e2d6c23423e745a2a46735256517a476b6a304a5251625a6c6a6d6a314e3b7c565167563f4162323243565f7c477a612b48683c5574656924584a3247235a435f754d4f39367d2455746551235a2a587642574d353d265a4444437b557467333f504b4b303e337d31365e6223687e3655767a6e4a5774333c236a302368346223687e36524323625e6c2360543830666d254f6c23427e73557531373e5575303d2a557467333c30674d4d3c574e265240583e4f45674956666d3658675e423b675f4c4d50686d3c4877305a5968423066762d6c4e5170757e315e40746936737c7c25645731694636737c7c2564587a753739293b5e7378536c5f4936737c7c25645a61265e6e564666486e573b617839293b5e7378554e3621514d6577333e233b773336737c7c256462423f5a2a513050663362234c2b6e564666486e596c6b48542376255f44372d286f39293b5e7378567d483661364a6d777172674178514d6577333e256c295747637a2b59477338633736737c7c2564633b34265e28623741216f4021642a51305066336463574578455f563b514f477d3c6e564666486e614d786c644b39696c3b6d53574c542376255f44396b40604a71702a4f614c71727339293b5e7378587751533030303030304d497c4161364a6d777174484a7b3b642649564e367c6d2a514d6577333e284d6074217532527a6b4a334c6747637a2b594774296f5571697b56362a56387c4836737c7c2564656c45336833697163394052673f5e286237412171713d215740637429583458466e2a5130506633664469624e387825447547633f4f78455f563b5150404242437c722d695f3148677d6e564666486e627c292a336648343e4a3d234376644b39696c3b6f3369693e7275454b6831292b56542376255f44424d3549252a405170252d6c62354a71702a4f614e52213f753144637c367938362439293b5e73785a5863706b48596d52543b4424633030303030304e5f375478455f563b515124774d61364a6d777175405847437c722d695f323535393b642649564e387678336e564666486e632b587c514d6577333e297d353d336648343e4a3e6f7829217532527a6b4b235921644b39696c3b6f3f367447637a2b59477668796e3e7275454b6832755a6871697b56362a572a3761542376255f444339715436737c7c2564674d524e252a405170253b597e476833697163395f3272414a71702a4f614f4653345e286237412173527e7b753144637c367960723e5740637429583638532a39293b5e7378614c30212a5130506633673c73756b48596d52543c31546f4e3878254475494531683030303030304f26746278455f563b5152714c5561364a6d777176247b4f437c722d695f324072483b642649564e396a4d426e564666486e64767c35514d6577333e2a2b727c336648343e4a3f634d3f217532527a6b4c6f7c2b644b39696c3b7023732347637a2b594777564e763e7275454b6833687d7071697b56362a58757469542376255f44437c466236737c7c256468393e56252a405170253c4d6c4f6833697163395f3e47494a71702a4f6150323f435e286237412174466d34753144637c367a29477d57406374295836603f4039293b5e737862386d2b2a5130506633687a48246b48596d52543c3c40774e38782544754a316e7030303030303050734934542376255f444458643078455f563b515364297c36737c7c2564686b445f61364a6d77717771683f252a405170253c773c3c437c722d695f3325462a683369716339605164263b642649564e41572a234a71702a4f61506445796e564666486e656a69765e286237412174703d73514d6577333e2b77476e753144637c36214a656b336648343e4a40502b6857406374295837574665217532527a6b4d636a6239293b5e737862693e59644b39696c3b717048552a51305066336943665247637a2b594778492d4f6b48596d52543d50474c3e7275454b6834566b494e38782544754a623f4671697b56362a5969494230303030303051356738542376255f44442a233478455f563b51533f383136737c7c2564687c627d61364a6d777178332860252a405170253d414340437c722d695f3447643c6833697163396021232b3b642649564e412a38284a71702a4f61503e63246e564666486e657b297a5e286237412175334477514d6577333e2d396572753144637c362174246f336648343e4a4021396c57406374295837296469217532527a6b4d3d2a6639293b5e7378627b4563644b39696c3b723266592a5130506633696d255647637a2b5947787441536b48596d52543d7a65503e7275454b6834282b4d4e38782544754a3d464a71697b56362a5960674630303030303051662643542376255f44454c323878455f563b515452573536737c7c25646958213261364a6d77717865367e252a405170253d6b617b437c722d695f347123406833697163397b45323d3b642649564e424b572d4a71702a4f61515121296e564666486e665837255e286237412175646221514d6577333e2d6a2476753144637c3623373373336648343e4a5e445870574063742958384a236d217532527a6b4e51386a39293b5e737863576367644b39696c3b726325632a51305066336a30345a47637a2b5947793659576b48596d52543e4324543e7275454b68354a39514e38782544754b50644e71697b56362a5a56264a303030303030515e3547542376255f444576514378455f563b515423753936737c7c2564692b313661364a6d7771783f5633252a405170253d7c7a30437c722d695f3534327b6833697163397b6f515e3b642649564e4275753e4a71702a4f615123313b6e564666486e662a562a5e2862374121753e7a26514d6577333e2d7c337a753144637c3623685277336648343e4a5e6e767457406374295838753271217532527a6b4e21576e39293b5e73786329216b644b39696c3b723e34672a51305066336a61536447637a2b5947796777616b48596d52543e6e33583e7275454b68357458554e38782544754b7a235271697b56362a5a29354e30303030303030324f6762642a6b586c76302438323438377956507c454f58674d666f4a5a4c7b6c30454c756a4c3547776d4f39347942675f4c4d5769392464493030377d6e5f6a3f5872296a7848666a63482a3d2a2a7c684229233975652b43533868442d4f793f2b43536a3162504723482b434d603573353155412b43503579787b48316b2b434e676c513c62466b2a2a5e7e3f6b452926342a2a7b55733e793e537c2a2b304b567c47624b752a2a7c62545760514d752a2a7d756b7060537d3b2a2a5f4b3d42587379702a2a5f7055704a453c322a2a6049504130657a452a2a7c4a625362265a562a2b31617a5a245076392a67783e49436b4640562a6770674236622a58562a67726947767c61716a2a67724e3938544e6a3c2a677633486e784f54702a67724837233b734a4b2a67777738797328677a2a67747e2b437d7046482a6774434c542b404d702a67713048776f445e3d2a67786d5559602565552a6772794b3d4f266b472a6777515177406837522a67742d6375336759782a67745073766a79787e2a67736e51363b373b472a67765a5272744a3c3d2a67724662313029656f2a6776632152477a522a2a67774f7e68453f6f4a2a67727b5e6e666b263e2a6774683933563c5f372a6779453831247356372a6771793c3648777a782a6773373d575a786f372a677341606376416a4d2a67725a5a70576b2a2a2a67775f47525a29266f2a677676705f235160412a67785825322a5255552a67744f7b2a677e67592a6774503543626d5e262a6775253e364229423e2a67724060764e4f62542a6775576e594c4a65342a6773422d32414343752a6777296358314336682a6774415e4d3f662a382a67702a5a745a3745492a677132454d417b647d2a6776737b56407c517a2a6771513473443e57782a677475215e484428712a2a5e6b24714830314b2a2b30404040622a44362a2a7e7035213950283b2a2a7c49442a515347492a2b30547a4f4e2341292a2a5f3449505a4f717b2a2b314c7071676c74682a2b324f347957444b732a2a7e74713833444b612a2b30574c65473d64482a2a7b43253d34796f512a2a7b6933662a6d55362a2b30336e2b605a343b2a2a7e6c79525854526e2a2b30566c552d3d78282a2a7c6726377032332a2a2a7e21703e3f7e60252a2a60342826353037552a2a7b73243226755a4f2a2a7e242364535e57632b434e30376054443c4e2b43522a557a453442472b43545a2d38787a4d462b6472662a62452d3b702b6471563b7b513d4c3d2b646f584b34615a587e2b263f7e3e57586a6c772b26406b474c41594a782b265e3e3d257a4e574c2d394b70636e57405a692d3948456725502975752d616a385f64373d7e7c2d233d673e63706548693b36457b73762b44606c3b36497b5f57773b347c3b58695776706f49777e3b792a295a2b294065333b7929414337612433353c33454a63243f4f4f653c55647447312d627e693c55627b5e4b212a726b3c763b6375647b68566e3d3039667c452b4769303d3037297859333e4a323d526171646a3e4e242b3d52622d6872497b66593d52615757745f4c43673d30365f303f4c4535563d3037376f52434452643d3043774e56326053403d30426469594c6f68213d30385f674939747c283d30426826492b2330633d3037747c4b41525f333d3045582d30316770393d30374235624f3e6c433d30415441766273564c3d30353f65606f7b3f513c76296c426c7c4950653c763b5930763d49782a3c762a7a4f53666243643c76266074387a76512d3c76243d3049683549693c763b39315a344d6c373c762b50747b65233c433c76262342474f3839753c762862354b454b51603c762a475f54395f7b753c763b24626b3c40716c3c55677d7d67256c233b3c556831356254545a2a3c556747653d683e36333c556124545e23347c723c556a383b54382870693c5565344c48697159373c556a492b384c50324d3c5565356374323539743c5568344f775f7267563c55623b3238624161443c5561734676253f6e633c33462b376f705e5a473c33484e53506d4377503c33487d70293d28703d3c3344687532437228413c33477c464b3079335f3c33426d74472b405f683c334177424f467b636f3c334279383c645341553c33417d294b46247e7b3c33472a3e7451603e3b3c3346403150587c757e3c334146436b376d2a453b7928747737286257593b792b7164734c7236753b792d6d374760482d783b793c59265a3b7044553b79294823687e69303b3b793c2a5e23472b59263b792b4c3e77252930343b793f4e7177596651373b792939355e56624d583b792d495f392d7c674b3b793d5e7c3c41683d3e3b793c4f6c7a397341243b793f61675f413058713b7929217973303671413b58653d72366b7172313b586b344b384c6f354e3b5866746e7149345f463b58672174387d6c42243b58666225264a6a286e3b586c4642677958664a3b5867697a717e6c6e543b58673964667563326f3b58675f70352d763d323b586d405175483268763b5865403f45404c45473b58674e2329332956493b586567746c3124247d3b5869404343466678403b586a236d7176297c483b5866332636783028503b58676a79716a3835333b5865527a43773240353b586c5036577e2d77353b36463c2347306a51753b364c7229383d433e2d3b364a4e7c6073545e6c3b3649686f7a4943465f3b36497a483240697c483b364b7e4b48452942723b36454d7d7364744f343b3646234f68326626313b364c573c5f3d3f47763b364c4c773f3f333b473b36496b2860406368683b364937546d2b68387a3b36463d622b4b3e32613b364950734c347326753b364964666c756d5325516b3041626377623f316124244c7458674d666f4a5a4c7b6c30454c756a4c3547776d4f39347942675f4c4d5769392464493030345577753144637c67673c297d753144637c6c737e763068336971636f3c446d4f753144637c712837524f6e564666487358773f4c68336971637530514e6978455f563b757c496e68753144637c765f415e6871697b5636773f4353686e56466648786a216a666b48596d52796723406568336971637a4357614a4a71702a4f7a2834462178455f563b21394f214947637a2b5921237b667a753144637c233651464a437c722d6923586b7a7971697b5636243349664939293b5e7324556d42796e56466648247640244736737c7c2525304453776b48596d5225732b3847336648343e257c4579766833697163264f5a50453030303030265f4153624a71702a4f265f373777644b39696c284c647d5f78455f563b284c6179455e28623741286d796a5a47637a2b59283f38647661364a6d77283f354640753144637c29495434453e7275454b296a7a7d61437c722d69296a7775745740637429293b7c694071697b56362a465561443b642649562a4652465939293b5e732a67793674542376255f2a67752b3f6e564666482a2a6072422a513050662b43536c5836737c7c252b43505173514d6577332b646e423e6b48596d522b267c3643252a4051702b265e2857336648343e2d394871724e387825442d616f683d68336971632d616c4e41217532527a2d232d385630303030303b3647426839293b5e733b364a32724a71702a4f3b364c5e23542376255f3b3646263d644b39696c3b586a28306e564666483b586d774178455f563b3b5867654a2a513050663b793b68565e286237413b793e596636737c7c253b792a4a7047637a2b593c33454d23514d6577333c3348443c61364a6d773c33417d7d6b48596d523c55657e39753144637c3c55685e4b252a4051703c556223553e7275454b3c76282366336648343e3c762b7671437c722d693c7624647a4e387825443d3039643b57406374293d3043557c68336971633d30364a3871697b56363d52614a4a217532527a3d526441543b642649563d5257606430303030303d73217d7039293b5e733d73253d7a4a71702a4f3d7329252d542376255f3d7321727c644b39696c3d7c3773386e564666483d7c416a4978455f563b3d7c3452522a513050663e4f5955645e286237413e4f624c6e36737c7c253e4f56367847637a2b593e707a392d514d6577333e7024307b61364a6d773e70762d366b48596d523e5f322d48753144637c3e5f352553252a4051703e5e7e6f633e7275454b3f4c546f6e336648343e3f4c576979437c722d693f4c51512a4e387825443f6d75516057406374293f6d78493568336971633f6d72364771697b56363f3e7d3652217532527a3f3f307c623b642649563f3e5f286c303030303040494e56426b48596d5240494f2b7839293b5e734049514d4c753144637c4049527a2a4a71702a4f4049544757252a405170404955715f542376255f40494e31673e7275454b406a706f36644b39696c406a723172336648343e406a7366476e56466648406a746024437c722d69406a76575178455f563b406a6e213c4e38782544403b5e4e612a51305066403b5f217e5740637429403b7b486c5e28623741403b7c73396833697163403b7e387636737c7c25403b3f674b71697b56365e464b322947637a2b595e464c6756217532527a5e464d7b5f514d6577335e464f58663b642649565e46503c3461364a6d775e4649497030303030305e676b28466b48596d525e676d4c2339293b5e735e676e7750753144637c5e6770433c4a71702a4f5e67717161252a4051705e6773337d542376255f5e676b626b3e7275454b5e2a3e3141644b39696c5e2a3f6276336648343e5e2a40404b6e564666485e2a5f5629437c722d695e2a60295578455f563b5e2a3c44404e387825445f434778652a513050665f4349453357406374295f434a72705e286237415f434c354468336971635f434d697a36737c7c255f43455e4f71697b56365f6468633b47637a2b595f64695e5a217532527a5f646b577d514d6577335f646c2a6a3b642649565f646e4f3861364a6d775f6466737430303030305f262b494a6b48596d525f262d762839293b5e735f263c3954753144637c5f263d6d404a71702a4f5f263f3365252a4051705f26406532542376255f5f262a3c6f3e7275454b6039446245644b39696c6039453c7a336648343e603947534f6e56466648603948283b437c722d6960394a4a5978455f563b6039426e7b4e3878254460616541692a513050666061666f37574063742960616834745e286237416061696648683369716360616a602536737c7c25606163545371697b56366023263d3f47637a2b596023295464217532527a60232a2a32514d65773360232d4b6e3b6426495660233b794361364a6d77602325357830303030307b3638734e6b48596d527b3641382d39293b5e737b36426a58753144637c7b36437e7b4a71702a4f7b36456469252a4051707b36463f36542376255f7b36384f733e7275454b7b58613c49644b39696c7b58634f25336648343e7b586424536e564666487b5866493f437c722d697b5867746378455f563b7b585a31304e387825447b79236b6d2a513050667b7925314257406374297b792665785e286237417b7928404c68336971637b792a562a36737c7c257b797a255771697b56367c3335506047637a2b597c33362568217532527a7c33384b36514d6577337c333975723b642649567c3342424761364a6d777c33336623303030303030363e263c6c756d5325516b3041646377634635583e40357d593f4e705e6a3053554b565167563f6c236054624e4a39764636737c7c256457316965684c6c70326a3062704d574026433d593f4e717958683d667b303030303030303030246c216c61326c23423b3f5574777d60565240386a4956666d3658675e423b675f4c4d50686d3c4877305a59682a6c785271614c4f3d2170304f332366646b24584a4b58736d73583c3c6a254b584e4d373b3b62306a4b68252a63342434547b4b6a35252a33726a7d594b534b53654758357e794b59735953692b26575e4b545e557c6d384139414b4d793332732d34215e4b542a723b6d324a34244b6667782a796f2349494b5835297e6668423c314b6124733e70472329684b4e634721626f666f234b4f6a3176566a6566794b51566239412a3e3c554b57613d5e66517d383e4b6a375f654b287153544b6b263042324d3669634b4c68552b34534c77764b52706e25554872287b4b513c353c5f497c71394b6348426570214b5a534b5173603d7479477d634b6844642575236c41344b5a356024577575444e4b57675628287d3938354b4e3338294f65313b4e4b6a2b41377a4a5950724b53455e5a43594e67314b67327a5e4f6b4848794b596f767b55433e5f474b577c7948313f2a59614b55287d31504f4d65664b64533c213f473934644b516e7b5f426f523b384b646442467030475e564b667d243252715255474b53604946606f632d724b586f507766484f28684b6c715e71644f6b5f6d4b5046256b507e2544314b545347682d792521634b5462622a51764f57584b525043232d2a212a664b683f7d745149316d424b65417d7d3921464e234b6a514552216c5051294b5760747b4c5a4048594b5760607c777043403d4b62593f6d384d4142484b53294b6747734a53284b614a704f6b644175544b546541566d3d2551424b68697339783659483b4b576356494b727937294b4d656b3f582d3269214b4e3930612b38342a7a4b65327e6e504f3b68384b4e606066683932244d4b5936563451392552514b4c55453959433b3b3e4b686b30465f435965294b646e42264b542538424b5758334272687b654b4b662b3b346974547b654b4d3c326f36512d546e4b696c597c533b7845434b6c7426782b2d25237e4b64212b55306b7b30774b665e6545363573614f4b5446295e594a7e33444b554f7d3139562b4a384b654042717a30636a2a4b6464324449284636424b663f5741603565764a4b584d4567724e684d384b647d3f2b454e695e6b4b503e267469347748674b55764b50736b2a44234b65355372584655686e4b535a6563606f4368404b675e383250655a3d694b6c24416f36555130624b63707e6f732144612b4b5a4c304c306e6743654b544e432a2435536c614b52256d6525476968384b545a3256784c7844694b58656277642a6552634b574f2174736d7957524b4c60634f464e677d3e4b4f626a237137292b454b565474763974742b234b51574b393e6a7e54374b6362396678437779614b5855714067245836254b534f425451564769394b4e4870244150487e644b5a4d69433e3c4152284b55467e6d78284b3d434b5039677e6858604b664b6c553761523073702b4b57373e2941716334454b5231594a3f677666684b5743565a234b41473d4b5a2b21216e495259464b56613e79324f3c36444b4f5664374a2d58784f4b4f3b553d624c713c464b667930786b452a69664b63326a356c6c7124474b55595e63546840632d4b634654246d5e2a46654b516d347e6e3c7251314b6b3c5942346950602a4b4f7c2a7a32787571664b59744968783c557d3c4b4c4d2d79237c5a69354b5a7070474b4648775a4b6c47356135657621584b6441497271522b41414b55256a4e434b6133494b4f68687d6c2d59236b4b6b502870346a6761674b653c405f6757466c3c4b5543263273756f34254b574b4d387a737859404b626b73506d40674c504b6d4d7a63294f592a6a4b654b793c366538697c4b65517d2347417a67424b623b5a682a5e7b6d304b4c656f6a7c356c58624b6b71624a6a644f65434b56586e4868556134424b6b7c656274466350744b566248264774655e524b65617824555f6c243f4b4f2478744b6d2d4b6a4b4c397c7021787275314b6536314d637a442b314b6962476f6a333e62334b6b6d216350245231324b58395a35755746527a4b6868614b4b3e55383d4b524d626f564170426d4b4f6f30544c486b74574b527560396c34647e544b5067513c264b4e413f4b68365a4b39543644674b65513d4e32547567214b4e356b4458335f42434b4c2925514b625049264b5521362626593b54544b586e3e3378397170234b64422a616a28566c794b4e6568773b7a5e55404b6557756d71464936424b54737e562d6c3d636d4b6c264837786a4130714b4e45574d2a396341474b576c3672715a547e6b4b6879407d676b6d653d4b6326334243467e6d464b6d4b3021447a6767574b503560323168404c284b4d287b49552d233c614b63567b3e75353b56724b5042702d6253756f5e4b53583e525e422571374b4f677c6b356c7962294b662528333c46256a524b522440303c352d64354b516879537142566f7a4b537e6045453d2b61644b6b7e34792b3f217c4e4b4d402928563c634d504b5231216e77266849574b4c75757a4f793537404b595f6a5f3d56334a414b6264752d3d263e6c5f4b4e506e562944733d794b52283d7d61666344254b4c42776a625f40704c4b67417a7274445e65674b54396277257d4d587a4b6b6557666e2a7271444b64586c4e3d453e4f4c4b6236744762297744534b62787576347e7852214b696b344a5a2d636b734b4f506d53635a3b6d784b53217b493b693934374b6a21544369706947584b6a53763c4b6d5576314b624750397a65396f474b5a2865663f5572606e4b54426c566b4e3969674b61626c2566406f706a4b615f4e6f5049517a7e6c23425e5e55756b593e625a4b46316c785466754e4a39775750787048635565214f38684c6c70326a3062734e574026433d593f4e717958683d667b6b4a7e7c6c586b702b236c216c61326c234335245770725035565168367d55764640396c78503571335356712a565073212964326e54766c6121314b4f3d5761775a29382b3f61416c4e2a6c763023763077607a25435f407167343b5452243057626a3d305551413d307c6673703068434a754f386070254f3929457b4f394d6d706d6a48594b5935294b4c3030303030303030303030303030303030303030654641267b593631574e303030303030303030303030303030303030303065464a3b7c59364a69503030303030303030303030303030303030303030643b6e3f263030303030303030303030303030303030303030303034616a6546535e7d5936742954303030303030303030303030303030303030303065466c3634643b777a75636d6975303030343359643c41503730303433755a554f2d535a5777243359367d31573030303030303030303030303030303030303030643b78707d643c413f30643b402432737c456c3730303030306546754338517669476259374744593030303030303030303030303030303030303030643b78707d643c413f30643b402432737c456c373030303030654675433851766a34244e2678403e4d52733971627a795836416172504441567a673d567b7e62365a586a574641596d594c583e4d6e315767757b47583e4e324e6372474152586c5a6a475a446e2b355a29367e386230427164576e3e423c4152722868415272296a586b7e3637625a424b444d733b7075625a4b7648415a633f544629632863334a4d3f7e4152722868415274672d6124232a7b62592a674c334c71644c4152722868415432457c4569456c414569456b7941527228684152722868637079333b62374e735f565238787d415272286841527228684152722943565168367d4161606847612543574e586b7b51716223377948583e563e49583e255a535a793b6932415a322138593b7c4644576e3f5a32334c71644c415272286841577e263f6223695756334c71644c4152722868415432457c4569456c41334c71644c4152722868416242373c4161693433592b2d543d41527228684152722868415272286852242a2a295767755e36416172504441567a673d567b7e62365a586a57464161725044416169684b56602a6b2d576e3e5f355a297439484528237a5a41527228684152765e356c71684928586f594264586e7e3965557440312657406441676a31796d4a5a676764476142706d33625a4b764855754a627e57305a5e2655754166376124235f39592b2d62315a2a455e5e622337796e626429484a31616f433c577c574b70632441433d6377627e3b6259595a3f32363c6d2856525460586a304a644b5a45303f6c6a304a644b5a4444776e6a30522847576f426b606c2342732b6c797344674d6c5762405a446c575061425e5845577067683f57706974455a2a5656435a29306d5e62576e4c4f5167333578577071245e464c477e5659686071426360743259625a422a53583e343b5a575f353033625a4b7648455e7639326a31706738584a76463e6334324946576e58565f625943254b6c23436c6a6223377948583e563e5755746563736259464931593b7c517b5a2a582a39463d556959356425596966425e367730315f364c39465a4a7c32477c69356d6d484243687a386766383c26324f6578502978653425605a62252b4a6e35667a736c6b734f45792a62354d6c4c44554e236d3d29437639407232522a414f5674354762652d7337305f6678462a305224525e56655148566b43315e5e4864687a52666c30312a7c7d3547635f5144357723724d582975764363717d684365736a36682858763735517171725863513f6162642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59666750454b4060516a7e705e65557644533256592d675a293043796c7855723342374b782d4278745536684c6d447848484d54406c7855775f6c785521363077607a25435f40596130543d2d673054324e713055606d454f396f322d4f3860703f4f39563f334c7a3c5457624f38565730303030303030345867643b7148673030303030303034616b643b4024325743337e233030303e50303034616c643c312b335743337e233030303e50303034616d624f51685930303030303030345867643c47632b303034586b64497c736c737b734832303030303065463c7e7d30303030303030303030643c312b3338327c7450643c63333930303635323030303030303034616f643b6f6b3064497c736c643c754c43644a36796d6449624f67643c63327e3030325f7d6c756b3c6c684c6e73385672673f5f567b7e365e576f4334676a30492b465a2828246c684c6b3931712d64765473412332567266387b2a3356325e3e5a67676447633432496b6a30536a4c592d4d4a326c23422a3e55753c502662642d7a26574f24547d3025556f5662642b65556a312b38585a653f4c7c55756b5a3157705a2444592b2d62315a2a47297e4b5370284b567b7e62365a5a3250366237676432583e4e33376126547b4b5652554a345a654d307e5a65755079593b522a3e593b21263f592d77267e5652427a2d5a676764476142706d33625a4b76486c755a45774c7521426b2b244175753750747d39427c4466332a645a7356336230594234242662756d3c4847284323565872514b3d356d417663253f2b234d7049486d45416d42513e7d4e2849593c37395932403f2b234d7049486d45416d42513e7d4e2849593c37395932403f2a645155474d7868462a613c443f4663684d673d78462a70624b2b71554b6c78502477445268296c6c7729236c567b32747d614374366d5652554739625a4b6d4a4540704c5a567b7e62365a56462374574e426b60557462446e245742676c6c7630235e6c7a6f266158642d3d2d5865344f4b622576423b5872583856437d3b23494c6a6e513b6c7548496e303830512532315e313c364749404530444a265e30632123503043454c3c3159606a6a303030307d30444a5e773076507d5230383b3e7a50443d6e767c4e734330686d3c4b4f5872795354587342715658725e655862642b65556a32325e575a67585e445a67674b7c6379777d4d6142706d33625a4b76486c23443f7d6223377948583e563e575574653d2662594571376261472a455a297b3c37583e563e7b575f353033453c397b2b565f7c475f4a7d7a54235a67585e445a67674b7c6379777d4d6142706d33625a4b76486c75684f574c6d506b712a656f7275312a2544796341234f49644328587c7848694264786a4e376f4d552d6531444a675736516a7d77495a29306d5e625a7e68745a44446b31622321544c62317236655a657728355a2a42402d5575303d78625945577a587843306f62642a772a6555794561437d3c2a6d6c785153712a6d5a604b567326444e6c757c472a",
+        "title": null,
+        "inputs": [
+          "alpha",
+          "beta",
+          "mach",
+          "reynolds",
+          "pitch_rate",
+          "yaw_rate",
+          "roll_rate"
+        ],
+        "outputs": [
+          "Drag Coefficient with Power On"
+        ],
+        "interpolation": null,
+        "extrapolation": null,
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846257868
+        }
+      },
+      "center_of_mass_without_motor": 0,
+      "coordinate_system_orientation": "tail_to_nose",
+      "motor": {
+        "thrust_source": {
+          "source": [
+            [
+              0.0,
+              0.0
+            ],
+            [
+              0.055,
+              100.0
+            ],
+            [
+              0.092,
+              1500.0
+            ],
+            [
+              0.1,
+              2000.0
+            ],
+            [
+              0.15,
+              2200.0
+            ],
+            [
+              0.2,
+              1800.0
+            ],
+            [
+              0.5,
+              1950.0
+            ],
+            [
+              1.0,
+              2034.0
+            ],
+            [
+              1.5,
+              2000.0
+            ],
+            [
+              2.0,
+              1900.0
+            ],
+            [
+              2.5,
+              1760.0
+            ],
+            [
+              2.9,
+              1700.0
+            ],
+            [
+              3.0,
+              1650.0
+            ],
+            [
+              3.3,
+              530.0
+            ],
+            [
+              3.4,
+              350.0
+            ],
+            [
+              3.9,
+              0.0
+            ]
           ],
-          [
-            0.02,
-            0.394981721
+          "title": "Thrust (N) x Time (S)",
+          "inputs": [
+            "Time (s)"
           ],
-          [
-            0.03,
-            0.407756063
+          "outputs": [
+            "Thrust (N)"
           ],
+          "interpolation": "linear",
+          "extrapolation": "zero",
+          "signature": {
+            "module": "rocketpy.mathutils.function",
+            "name": "Function",
+            "hash": 8532849063757
+          }
+        },
+        "dry_I_11": 0.125,
+        "dry_I_22": 0.125,
+        "dry_I_33": 0.002,
+        "dry_I_12": 0,
+        "dry_I_13": 0,
+        "dry_I_23": 0,
+        "nozzle_radius": 0.033,
+        "nozzle_area": 0.003421194399759285,
+        "center_of_dry_mass_position": 0.317,
+        "dry_mass": 1.815,
+        "nozzle_position": 0,
+        "burn_time": [
+          0,
+          3.9
+        ],
+        "interpolate": "linear",
+        "coordinate_system_orientation": "nozzle_to_combustion_chamber",
+        "reference_pressure": null,
+        "throat_radius": 0.011,
+        "grain_number": 5,
+        "grain_density": 1815,
+        "grain_outer_radius": 0.033,
+        "grain_initial_inner_radius": 0.015,
+        "grain_initial_height": 0.12,
+        "grain_separation": 0.005,
+        "grains_center_of_mass_position": 0.397,
+        "only_radial_burn": false,
+        "signature": {
+          "module": "rocketpy.motors.solid_motor",
+          "name": "SolidMotor",
+          "hash": 8532846656120
+        }
+      },
+      "motor_position": -1.373,
+      "aerodynamic_surfaces": [
+        [
+          {
+            "_length": 0.55829,
+            "_kind": "vonkarman",
+            "_base_radius": 0.0635,
+            "_bluffness": null,
+            "_rocket_radius": 0.0635,
+            "_power": null,
+            "name": "calisto_nose_cone",
+            "signature": {
+              "module": "rocketpy.rocket.aero_surface.nose_cone",
+              "name": "NoseCone",
+              "hash": 8532846656042
+            }
+          },
           [
-            0.04,
-            0.410692705
-          ],
+            0,
+            0,
+            1.16
+          ]
+        ],
+        [
+          {
+            "top_radius": 0.0635,
+            "bottom_radius": 0.0435,
+            "length": 0.06,
+            "rocket_radius": 0.0635,
+            "name": "calisto_tail",
+            "signature": {
+              "module": "rocketpy.rocket.aero_surface.tail",
+              "name": "Tail",
+              "hash": 8532849053142
+            }
+          },
           [
-            0.05,
-            0.410540353
-          ],
+            0,
+            0,
+            -1.313
+          ]
+        ],
+        [
+          {
+            "n": 4,
+            "root_chord": 0.12,
+            "span": 0.1,
+            "rocket_radius": 0.0635,
+            "cant_angle": 0,
+            "airfoil": null,
+            "name": "calisto_trapezoidal_fins",
+            "tip_chord": 0.04,
+            "sweep_length": 0.07999999999999999,
+            "sweep_angle": null,
+            "signature": {
+              "module": "rocketpy.rocket.aero_surface.fins.trapezoidal_fins",
+              "name": "TrapezoidalFins",
+              "hash": 8532849063670
+            }
+          },
           [
-            0.06,
-            0.409240293
-          ],
+            0,
+            0,
+            -1.168
+          ]
+        ]
+      ],
+      "rail_buttons": [
+        [
+          {
+            "buttons_distance": 0.7,
+            "angular_position": 0,
+            "button_height": null,
+            "name": "Rail Buttons",
+            "rocket_radius": 0.0635,
+            "signature": {
+              "module": "rocketpy.rocket.aero_surface.rail_buttons",
+              "name": "RailButtons",
+              "hash": 8532846257190
+            }
+          },
           [
-            0.07,
-            0.407500874
+            -0.0,
+            0.0635,
+            -0.618
+          ]
+        ]
+      ],
+      "parachutes": [
+        {
+          "name": "calisto_main_chute",
+          "parachute_type": "hemispherical",
+          "cd_s": 10.0,
+          "trigger": "66435144673052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32307340707631347b72293038305a29302174475e4165523771302551526830303031463026343b513043296a25317078716a30627e50663073734a303046293f424f39657b2b4f267c6b776c71726b3e61466d507a587131637264366238676a386076635a2a363553593b62613662592a69644c7d686270625a3e416b5167333578577071245e4648267a7e59686070246360744e6a62393865725740266849622369354d464b7d555556506a7d4062592a6964614139266056607a3142576e583423637978376757706766596436624c7b5a4444437b55767a5335584a3d287b6c234463455651677530625a3d6a365651467128614139266056607a3142576e586c31583d69363b61784f653c5a2930493e623351494056514671286261483844584a7641664f43647555664240685235526567786264585f2a632b7739656d5f6557656e4d63714642617d6b606c716f35366c7630237162592a6a4e6231723653637978376757706766595652422828586d7861446231726155612423643d62232148345740266849622369354d335356446a583d384c3e556b59647150454b4060516a7e705e6555764453345f7b776c5a663c584d5652554a345a6758453e6c7a6f2870337d305679627a7939375651706e21557a424a4c622576423b4526",
+          "sampling_rate": 105,
+          "lag": 1.5,
+          "noise": [
+            0,
+            8.3,
+            0.5
           ],
-          [
-            0.08,
-            0.405617853
+          "radius": 1.5078600877302688,
+          "drag_coefficient": 1.4,
+          "height": 1.5078600877302688,
+          "porosity": 0.0432,
+          "signature": {
+            "module": "rocketpy.rocket.parachutes.hemispherical_parachute",
+            "name": "HemisphericalParachute",
+            "hash": 8532846519577
+          }
+        },
+        {
+          "name": "calisto_drogue_chute",
+          "parachute_type": "hemispherical",
+          "cd_s": 1.0,
+          "trigger": "664351444b3052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32307340707631347b72293038305a29302174475e357c3b7063302551526830303031463026343b5130383b3e7a50443d2423304564282a697e283f7a697e287172697e29492b686d3f2430464b424f5657694d3d5361242436336231795f3f6238423e4f6134254143567b32747d503c62793e5a29306d5e62576e4c4f62592a6a4e62312143546379783767577067695a5652422828586d7861446231216756612423643d62232148345740266849622369354d455e7639326a314658535a2962493755767a5335584a3d287b6c23446f495651677530625a3d697c61264b704b576e585925612423643d62232148346261483844584a76394f4a5a78606356516830674540583056584c56263f6261483844584a7641664f41746433664240685235526567786264585f2a6321263e5f4c6a615531445268296c6c77292a6462393865715740266849622369354d455e754c5456506a7d4062592a6963614139266056607a3142576e583423637978376757706648265575303d78625945577a58626e7a4962642a772a6555794561443278775a5574772d3b5a2a2a6146583e563f4755746734636c23433274557659497c593b49767e576e572a4558627946546c77764c",
+          "sampling_rate": 105,
+          "lag": 1.5,
+          "noise": [
+            0,
+            8.3,
+            0.5
           ],
+          "radius": 0.4768272270088961,
+          "drag_coefficient": 1.4,
+          "height": 0.4768272270088961,
+          "porosity": 0.0432,
+          "signature": {
+            "module": "rocketpy.rocket.parachutes.hemispherical_parachute",
+            "name": "HemisphericalParachute",
+            "hash": 8532846519634
+          }
+        }
+      ],
+      "air_brakes": [],
+      "_controllers": [],
+      "sensors": [],
+      "signature": {
+        "module": "rocketpy.rocket.rocket",
+        "name": "Rocket",
+        "hash": 8532846656441
+      }
+    },
+    "env": {
+      "gravity": {
+        "source": [
           [
-            0.09,
-            0.403724114
+            0.0,
+            9.795652669148597
           ],
           [
-            0.1,
-            0.401881596
+            808.0808080808081,
+            9.793159061704268
           ],
           [
-            0.11,
-            0.400118527
+            1616.1616161616162,
+            9.790666397683085
           ],
           [
-            0.12,
-            0.398446442
+            2424.242424242424,
+            9.788174677085044
           ],
           [
-            0.13,
-            0.396868616
+            3232.3232323232323,
+            9.785683899910145
           ],
           [
-            0.14,
-            0.395383943
+            4040.4040404040406,
+            9.78319406615839
           ],
           [
-            0.15,
-            0.393989178
+            4848.484848484848,
+            9.78070517582978
           ],
           [
-            0.16,
-            0.392680199
+            5656.565656565656,
+            9.778217228924312
           ],
           [
-            0.17,
-            0.391452432
+            6464.646464646465,
+            9.775730225441988
           ],
           [
-            0.18,
-            0.390301526
+            7272.727272727273,
+            9.773244165382808
           ],
           [
-            0.19,
-            0.389222867
+            8080.808080808081,
+            9.77075904874677
           ],
           [
-            0.2,
-            0.388212693
+            8888.888888888889,
+            9.768274875533876
           ],
           [
-            0.21,
-            0.3872672
+            9696.969696969696,
+            9.765791645744127
           ],
           [
-            0.22,
-            0.386382809
+            10505.050505050505,
+            9.76330935937752
           ],
           [
-            0.23,
-            0.385556609
+            11313.131313131313,
+            9.760828016434056
           ],
           [
-            0.24,
-            0.384785814
+            12121.212121212122,
+            9.758347616913735
           ],
           [
-            0.25,
-            0.3840677
+            12929.29292929293,
+            9.755868160816558
           ],
           [
-            0.26,
-            0.383461808
+            13737.373737373737,
+            9.753389648142525
           ],
           [
-            0.27,
-            0.382904488
+            14545.454545454546,
+            9.750912078891636
           ],
           [
-            0.28,
-            0.38239367
+            15353.535353535353,
+            9.74843545306389
           ],
           [
-            0.29,
-            0.381927906
+            16161.616161616163,
+            9.745959770659285
           ],
           [
-            0.3,
-            0.381505764
+            16969.696969696968,
+            9.743485031677826
           ],
           [
-            0.31,
-            0.38112576
+            17777.777777777777,
+            9.74101123611951
           ],
           [
-            0.32,
-            0.380786983
+            18585.858585858587,
+            9.738538383984336
           ],
           [
-            0.33,
-            0.380488401
+            19393.939393939392,
+            9.736066475272306
           ],
           [
-            0.34,
-            0.380229069
+            20202.0202020202,
+            9.73359550998342
           ],
           [
-            0.35,
-            0.380008442
+            21010.10101010101,
+            9.731125488117678
           ],
           [
-            0.36,
-            0.379825864
+            21818.18181818182,
+            9.728656409675079
           ],
           [
-            0.37,
-            0.379680781
+            22626.262626262625,
+            9.726188274655623
           ],
           [
-            0.38,
-            0.379572948
+            23434.343434343435,
+            9.72372108305931
           ],
           [
-            0.39,
-            0.379502053
+            24242.424242424244,
+            9.72125483488614
           ],
           [
-            0.4,
-            0.379467845
+            25050.50505050505,
+            9.718789530136116
           ],
           [
-            0.41,
-            0.379470462
+            25858.58585858586,
+            9.716325168809234
           ],
           [
-            0.42,
-            0.379509762
+            26666.666666666668,
+            9.713861750905496
           ],
           [
-            0.43,
-            0.379585951
+            27474.747474747473,
+            9.711399276424899
           ],
           [
-            0.44,
-            0.379699307
+            28282.828282828283,
+            9.708937745367447
           ],
           [
-            0.45,
-            0.379850119
+            29090.909090909092,
+            9.706477157733138
           ],
           [
-            0.46,
-            0.380038814
+            29898.989898989897,
+            9.704017513521974
           ],
           [
-            0.47,
-            0.38026598
+            30707.070707070707,
+            9.701558812733952
           ],
           [
-            0.48,
-            0.380532207
+            31515.151515151516,
+            9.699101055369074
           ],
           [
-            0.49,
-            0.380838218
+            32323.232323232325,
+            9.696644241427338
           ],
           [
-            0.5,
-            0.381184986
+            33131.31313131313,
+            9.694188370908746
           ],
           [
-            0.51,
-            0.381573462
+            33939.393939393936,
+            9.691733443813298
           ],
           [
-            0.52,
-            0.382004786
+            34747.47474747475,
+            9.689279460140995
           ],
           [
-            0.53,
-            0.382480279
+            35555.555555555555,
+            9.686826419891833
           ],
           [
-            0.54,
-            0.383061789
+            36363.63636363636,
+            9.684374323065816
           ],
           [
-            0.55,
-            0.384021453
+            37171.71717171717,
+            9.68192316966294
           ],
           [
-            0.56,
-            0.385021508
+            37979.79797979798,
+            9.67947295968321
           ],
           [
-            0.57,
-            0.386064151
+            38787.878787878784,
+            9.677023693126623
           ],
           [
-            0.58,
-            0.387151683
+            39595.9595959596,
+            9.674575369993178
           ],
           [
-            0.59,
-            0.388286902
+            40404.0404040404,
+            9.672127990282878
           ],
           [
-            0.6,
-            0.38947261
+            41212.121212121216,
+            9.66968155399572
           ],
           [
-            0.61,
-            0.390823679
+            42020.20202020202,
+            9.667236061131705
           ],
           [
-            0.62,
-            0.392227749
+            42828.28282828283,
+            9.664791511690835
           ],
           [
-            0.63,
-            0.393692485
+            43636.36363636364,
+            9.662347905673109
           ],
           [
-            0.64,
-            0.395222008
+            44444.444444444445,
+            9.659905243078523
           ],
           [
-            0.65,
-            0.396820939
+            45252.52525252525,
+            9.657463523907083
           ],
           [
-            0.66,
-            0.398494134
+            46060.606060606064,
+            9.655022748158785
           ],
           [
-            0.67,
-            0.400247115
+            46868.68686868687,
+            9.652582915833632
           ],
           [
-            0.68,
-            0.402086103
+            47676.767676767675,
+            9.650144026931622
           ],
           [
-            0.69,
-            0.404017654
+            48484.84848484849,
+            9.647706081452755
           ],
           [
-            0.7,
-            0.406049491
+            49292.92929292929,
+            9.645269079397032
           ],
           [
-            0.71,
-            0.405692833
+            50101.0101010101,
+            9.642833020764453
           ],
           [
-            0.72,
-            0.405182938
+            50909.09090909091,
+            9.640397905555016
           ],
           [
-            0.73,
-            0.404673127
+            51717.17171717172,
+            9.637963733768723
           ],
           [
-            0.74,
-            0.404163299
+            52525.25252525252,
+            9.635530505405573
           ],
           [
-            0.75,
-            0.403653676
+            53333.333333333336,
+            9.633098220465566
           ],
           [
-            0.76,
-            0.403144115
+            54141.41414141414,
+            9.630666878948704
           ],
           [
-            0.77,
-            0.402634536
+            54949.49494949495,
+            9.628236480854984
           ],
           [
-            0.78,
-            0.402125162
+            55757.57575757576,
+            9.625807026184408
           ],
           [
-            0.79,
-            0.401615748
+            56565.656565656565,
+            9.623378514936975
           ],
           [
-            0.8,
-            0.401106515
+            57373.73737373737,
+            9.620950947112686
           ],
           [
-            0.81,
-            0.406691886
+            58181.818181818184,
+            9.61852432271154
           ],
           [
-            0.82,
-            0.412277217
+            58989.89898989899,
+            9.616098641733537
           ],
           [
-            0.83,
-            0.417862728
+            59797.979797979795,
+            9.613673904178679
           ],
           [
-            0.84,
-            0.423448342
+            60606.06060606061,
+            9.611250110046964
           ],
           [
-            0.85,
-            0.429033915
+            61414.14141414141,
+            9.60882725933839
           ],
           [
-            0.86,
-            0.434619667
+            62222.22222222222,
+            9.606405352052962
           ],
           [
-            0.87,
-            0.440205521
+            63030.30303030303,
+            9.603984388190677
           ],
           [
-            0.88,
-            0.445791433
+            63838.38383838384,
+            9.601564367751534
           ],
           [
-            0.89,
-            0.451377325
+            64646.46464646465,
+            9.599145290735535
           ],
           [
-            0.9,
-            0.456963416
+            65454.545454545456,
+            9.59672715714268
           ],
           [
-            0.91,
-            0.460070768
+            66262.62626262626,
+            9.594309966972968
           ],
           [
-            0.92,
-            0.469392821
+            67070.70707070707,
+            9.5918937202264
           ],
           [
-            0.93,
-            0.486455115
+            67878.78787878787,
+            9.589478416902974
           ],
           [
-            0.94,
-            0.506596622
+            68686.8686868687,
+            9.587064057002694
           ],
           [
-            0.95,
-            0.526738129
+            69494.9494949495,
+            9.584650640525554
           ],
           [
-            0.96,
-            0.546879635
+            70303.0303030303,
+            9.58223816747156
           ],
           [
-            0.97,
-            0.567021142
+            71111.11111111111,
+            9.579826637840709
           ],
           [
-            0.98,
-            0.587162649
+            71919.19191919192,
+            9.577416051633001
           ],
           [
-            0.99,
-            0.607304156
+            72727.27272727272,
+            9.575006408848436
           ],
           [
-            1.0,
-            0.627445662
+            73535.35353535354,
+            9.572597709487015
           ],
           [
-            1.01,
-            0.647587169
+            74343.43434343435,
+            9.570189953548738
           ],
           [
-            1.02,
-            0.667728676
+            75151.51515151515,
+            9.567783141033603
           ],
           [
-            1.03,
-            0.687870183
+            75959.59595959596,
+            9.565377271941612
           ],
           [
-            1.04,
-            0.708011689
+            76767.67676767676,
+            9.562972346272765
           ],
           [
-            1.05,
-            0.728153196
+            77575.75757575757,
+            9.560568364027061
           ],
           [
-            1.06,
-            0.724823841
+            78383.83838383839,
+            9.5581653252045
           ],
           [
-            1.07,
-            0.721573639
+            79191.9191919192,
+            9.555763229805082
           ],
           [
-            1.08,
-            0.718399539
-          ],
+            80000.0,
+            9.553362077828808
+          ]
+        ],
+        "title": "Gravity (M/S\u00b2) x Height (M)",
+        "inputs": [
+          "height (m)"
+        ],
+        "outputs": [
+          "gravity (m/s\u00b2)"
+        ],
+        "interpolation": "spline",
+        "extrapolation": "constant",
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846519916
+        }
+      },
+      "date": [
+        2026,
+        5,
+        8,
+        19
+      ],
+      "latitude": 32.990254,
+      "longitude": -106.974998,
+      "elevation": 1400,
+      "datum": "WGS84",
+      "timezone": "UTC",
+      "max_expected_height": 80000,
+      "atmospheric_model_type": "standard_atmosphere",
+      "pressure": {
+        "source": [
           [
-            1.09,
-            0.715298768
+            0.0,
+            101325.0
           ],
           [
-            1.1,
-            0.712269521
+            808.0808080808081,
+            91987.7190736821
           ],
           [
-            1.11,
-            0.709309845
+            1616.1616161616162,
+            83361.82512452437
           ],
           [
-            1.12,
-            0.706418312
+            2424.242424242424,
+            75404.85002451327
           ],
           [
-            1.13,
-            0.703593424
+            3232.3232323232323,
+            68076.13913989047
           ],
           [
-            1.14,
-            0.700834081
+            4040.4040404040406,
+            61336.80542875398
           ],
           [
-            1.15,
-            0.698139003
+            4848.484848484848,
+            55149.6839076808
           ],
           [
-            1.16,
-            0.695198562
+            5656.565656565656,
+            49479.28648882014
           ],
           [
-            1.17,
-            0.692310349
+            6464.646464646465,
+            44291.75718899091
           ],
           [
-            1.18,
-            0.689484944
+            7272.727272727273,
+            39554.8277124111
           ],
           [
-            1.19,
-            0.686649695
+            8080.808080808081,
+            35237.77340878227
           ],
           [
-            1.2,
-            0.683689234
+            8888.888888888889,
+            31311.369608556404
           ],
           [
-            1.21,
-            0.680791411
+            9696.969696969696,
+            27747.848337320425
           ],
           [
-            1.22,
-            0.677955453
+            10505.050505050505,
+            24520.85541135015
           ],
           [
-            1.23,
-            0.675180983
+            11313.131313131313,
+            21609.78655018426
           ],
           [
-            1.24,
-            0.672467031
+            12121.212121212122,
+            19033.26274375408
           ],
           [
-            1.25,
-            0.669813183
+            12929.29292929293,
+            16764.474771267724
           ],
           [
-            1.26,
-            0.667218931
+            13737.373737373737,
+            14766.602969629348
           ],
           [
-            1.27,
-            0.664683659
-          ],
-          [
-            1.28,
-            0.662207006
-          ],
-          [
-            1.29,
-            0.658958242
-          ],
-          [
-            1.3,
-            0.655696788
-          ],
-          [
-            1.31,
-            0.652482071
-          ],
-          [
-            1.32,
-            0.649313067
-          ],
-          [
-            1.33,
-            0.646188665
-          ],
-          [
-            1.34,
-            0.643107891
-          ],
-          [
-            1.35,
-            0.640069748
-          ],
-          [
-            1.36,
-            0.63707329
-          ],
-          [
-            1.37,
-            0.634117922
-          ],
-          [
-            1.38,
-            0.631202794
-          ],
-          [
-            1.39,
-            0.628327073
-          ],
-          [
-            1.4,
-            0.625490308
-          ],
-          [
-            1.41,
-            0.622691519
-          ],
-          [
-            1.42,
-            0.619930492
-          ],
-          [
-            1.43,
-            0.617206358
-          ],
-          [
-            1.44,
-            0.614518793
-          ],
-          [
-            1.45,
-            0.611867277
-          ],
-          [
-            1.46,
-            0.609251142
-          ],
-          [
-            1.47,
-            0.606670082
-          ],
-          [
-            1.48,
-            0.604123714
+            14545.454545454546,
+            13007.240706939541
           ],
           [
-            1.49,
-            0.601611411
+            15353.535353535353,
+            11457.864539417797
           ],
           [
-            1.5,
-            0.599132922
+            16161.616161616163,
+            10093.368093092535
           ],
           [
-            1.51,
-            0.596687849
+            16969.696969696968,
+            8891.651992797142
           ],
           [
-            1.52,
-            0.594275965
+            17777.777777777777,
+            7833.263087569549
           ],
           [
-            1.53,
-            0.591896725
+            18585.858585858587,
+            6901.077036098035
           ],
           [
-            1.54,
-            0.589549659
+            19393.939393939392,
+            6080.019031951716
           ],
           [
-            1.55,
-            0.587234882
+            20202.0202020202,
+            5356.857540200649
           ],
           [
-            1.56,
-            0.584951742
+            21010.10101010101,
+            4721.30991526769
           ],
           [
-            1.57,
-            0.582700041
+            21818.18181818182,
+            4163.232875682235
           ],
           [
-            1.58,
-            0.580479567
+            22626.262626262625,
+            3672.933313335594
           ],
           [
-            1.59,
-            0.578289812
+            23434.343434343435,
+            3241.96189056941
           ],
           [
-            1.6,
-            0.576130805
+            24242.424242424244,
+            2862.9495069519526
           ],
           [
-            1.61,
-            0.574002135
+            25050.50505050505,
+            2529.4657811142115
           ],
           [
-            1.62,
-            0.571903631
+            25858.58585858586,
+            2235.8965154219945
           ],
           [
-            1.63,
-            0.569835013
+            26666.666666666668,
+            1977.3375382595987
           ],
           [
-            1.64,
-            0.567796001
+            27474.747474747473,
+            1749.502684263471
           ],
           [
-            1.65,
-            0.565786432
+            28282.828282828283,
+            1548.643985995348
           ],
           [
-            1.66,
-            0.563806137
+            29090.909090909092,
+            1371.4824189575293
           ],
           [
-            1.67,
-            0.561854848
+            29898.989898989897,
+            1215.147772053759
           ],
           [
-            1.68,
-            0.559932409
+            30707.070707070707,
+            1077.1264131440405
           ],
           [
-            1.69,
-            0.558038559
+            31515.151515151516,
+            955.2158889599972
           ],
           [
-            1.7,
-            0.556173065
+            32323.232323232325,
+            847.499978875429
           ],
           [
-            1.71,
-            0.554336047
+            33131.31313131313,
+            752.6468464013102
           ],
           [
-            1.72,
-            0.552526984
+            33939.393939393936,
+            669.1943201981346
           ],
           [
-            1.73,
-            0.550745911
+            34747.47474747475,
+            595.6797652851934
           ],
           [
-            1.74,
-            0.548992581
+            35555.555555555555,
+            530.8398105331449
           ],
           [
-            1.75,
-            0.547266786
+            36363.63636363636,
+            473.5816498223962
           ],
           [
-            1.76,
-            0.545568552
+            37171.71717171717,
+            422.95869580802866
           ],
           [
-            1.77,
-            0.543897563
+            37979.79797979798,
+            378.14989351611064
           ],
           [
-            1.78,
-            0.542253679
+            38787.878787878784,
+            338.4421163601665
           ],
           [
-            1.79,
-            0.54063688
+            39595.9595959596,
+            303.21516248578837
           ],
           [
-            1.8,
-            0.539046907
+            40404.0404040404,
+            271.9289482508904
           ],
           [
-            1.81,
-            0.53764434
+            41212.121212121216,
+            244.1125610731998
           ],
           [
-            1.82,
-            0.536217646
+            42020.20202020202,
+            219.3548882212263
           ],
           [
-            1.83,
-            0.534799494
+            42828.28282828283,
+            197.29658334344018
           ],
           [
-            1.84,
-            0.53338978
+            43636.36363636364,
+            177.62317021852115
           ],
           [
-            1.85,
-            0.531988364
+            44444.444444444445,
+            160.0591146730051
           ],
           [
-            1.86,
-            0.530595145
+            45252.52525252525,
+            144.36272192209393
           ],
           [
-            1.87,
-            0.529209996
+            46060.606060606064,
+            130.32173862399574
           ],
           [
-            1.88,
-            0.527832797
+            46868.68686868687,
+            117.74955742138306
           ],
           [
-            1.89,
-            0.526463462
+            47676.767676767675,
+            106.47484007806983
           ],
           [
-            1.9,
-            0.525101881
+            48484.84848484849,
+            96.29612629300844
           ],
           [
-            1.91,
-            0.523747949
+            49292.92929292929,
+            87.09267112410951
           ],
           [
-            1.92,
-            0.52240154
+            50101.0101010101,
+            78.77082110971176
           ],
           [
-            1.93,
-            0.521062597
+            50909.09090909091,
+            71.24593644891102
           ],
           [
-            1.94,
-            0.519730988
+            51717.17171717172,
+            64.43744165841878
           ],
           [
-            1.95,
-            0.51840665
+            52525.25252525252,
+            58.24214298057
           ],
           [
-            1.96,
-            0.517089486
+            53333.333333333336,
+            52.599403212707756
           ],
           [
-            1.97,
-            0.515779376
+            54141.41414141414,
+            47.463832279428956
           ],
           [
-            1.98,
-            0.514476265
+            54949.49494949495,
+            42.79344497470941
           ],
           [
-            1.99,
-            0.513180047
+            55757.57575757576,
+            38.549430108466424
           ],
           [
-            2.0,
-            0.511890654
-          ]
-        ],
-        "title": "Drag Coefficient With Power Off x Mach Number",
-        "inputs": [
-          "Mach Number"
-        ],
-        "outputs": [
-          "Drag Coefficient with Power Off"
-        ],
-        "interpolation": "linear",
-        "extrapolation": "constant",
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "power_on_drag": {
-        "source": [
-          [
-            0.01,
-            0.333865758
+            56565.656565656565,
+            34.69593362379314
           ],
           [
-            0.02,
-            0.394981721
+            57373.73737373737,
+            31.19985494191285
           ],
           [
-            0.03,
-            0.407756063
+            58181.818181818184,
+            28.03065582593985
           ],
           [
-            0.04,
-            0.410692705
+            58989.89898989899,
+            25.160181087260145
           ],
           [
-            0.05,
-            0.410540353
+            59797.979797979795,
+            22.56249048980449
           ],
           [
-            0.06,
-            0.409240293
+            60606.06060606061,
+            20.213701237719714
           ],
           [
-            0.07,
-            0.407500874
+            61414.14141414141,
+            18.091840460982535
           ],
           [
-            0.08,
-            0.405617853
+            62222.22222222222,
+            16.176707141392633
           ],
           [
-            0.09,
-            0.403724114
+            63030.30303030303,
+            14.449742948155004
           ],
           [
-            0.1,
-            0.401881596
+            63838.38383838384,
+            12.893911477959598
           ],
           [
-            0.11,
-            0.400118527
+            64646.46464646465,
+            11.493585419118016
           ],
           [
-            0.12,
-            0.398446442
+            65454.545454545456,
+            10.234441182963137
           ],
           [
-            0.13,
-            0.396868616
+            66262.62626262626,
+            9.103360568384003
           ],
           [
-            0.14,
-            0.395383943
+            67070.70707070707,
+            8.088339047096008
           ],
           [
-            0.15,
-            0.393989178
+            67878.78787878787,
+            7.178400278058695
           ],
           [
-            0.16,
-            0.392680199
+            68686.8686868687,
+            6.363516479389216
           ],
           [
-            0.17,
-            0.391452432
+            69494.9494949495,
+            5.63453430520159
           ],
           [
-            0.18,
-            0.390301526
+            70303.0303030303,
+            4.983105893065587
           ],
           [
-            0.19,
-            0.389222867
+            71111.11111111111,
+            4.401624765249175
           ],
           [
-            0.2,
-            0.388212693
+            71919.19191919192,
+            3.883187463774612
           ],
           [
-            0.21,
-            0.3872672
+            72727.27272727272,
+            3.422284009324427
           ],
           [
-            0.22,
-            0.386382809
+            73535.35353535354,
+            3.01334416315519
           ],
           [
-            0.23,
-            0.385556609
+            74343.43434343435,
+            2.6508221542533925
           ],
           [
-            0.24,
-            0.384785814
+            75151.51515151515,
+            2.3297303200744794
           ],
           [
-            0.25,
-            0.3840677
+            75959.59595959596,
+            2.045586374944322
           ],
           [
-            0.26,
-            0.383461808
+            76767.67676767676,
+            1.7943653328057088
           ],
           [
-            0.27,
-            0.382904488
+            77575.75757575757,
+            1.5724557027121977
           ],
           [
-            0.28,
-            0.38239367
+            78383.83838383839,
+            1.3766196043424184
           ],
           [
-            0.29,
-            0.381927906
+            79191.9191919192,
+            1.2039564776776897
           ],
           [
-            0.3,
-            0.381505764
-          ],
+            80000.0,
+            1.0518700859818015
+          ]
+        ],
+        "title": "Pressure (Pa) x Height Above Sea Level (M)",
+        "inputs": [
+          "Height Above Sea Level (m)"
+        ],
+        "outputs": [
+          "Pressure (Pa)"
+        ],
+        "interpolation": "spline",
+        "extrapolation": "natural",
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846519790
+        }
+      },
+      "temperature": {
+        "source": [
           [
-            0.31,
-            0.38112576
+            -1999.3730505791445,
+            301.15
           ],
           [
-            0.32,
-            0.380786983
+            0.0,
+            288.15
           ],
           [
-            0.33,
-            0.380488401
+            11019.003942140063,
+            216.65
           ],
           [
-            0.34,
-            0.380229069
+            20062.911876189428,
+            216.65
           ],
           [
-            0.35,
-            0.380008442
+            32161.358944863776,
+            228.65
           ],
           [
-            0.36,
-            0.379825864
+            47348.91251125397,
+            270.65
           ],
           [
-            0.37,
-            0.379680781
+            51411.08880845885,
+            270.65
           ],
           [
-            0.38,
-            0.379572948
+            71799.25797910291,
+            214.65
           ],
           [
-            0.39,
-            0.379502053
-          ],
-          [
-            0.4,
-            0.379467845
-          ],
-          [
-            0.41,
-            0.379470462
-          ],
-          [
-            0.42,
-            0.379509762
-          ],
-          [
-            0.43,
-            0.379585951
-          ],
-          [
-            0.44,
-            0.379699307
-          ],
-          [
-            0.45,
-            0.379850119
-          ],
-          [
-            0.46,
-            0.380038814
-          ],
-          [
-            0.47,
-            0.38026598
-          ],
-          [
-            0.48,
-            0.380532207
-          ],
-          [
-            0.49,
-            0.380838218
-          ],
-          [
-            0.5,
-            0.381184986
-          ],
-          [
-            0.51,
-            0.381573462
-          ],
-          [
-            0.52,
-            0.382004786
-          ],
-          [
-            0.53,
-            0.382480279
-          ],
-          [
-            0.54,
-            0.383061789
-          ],
-          [
-            0.55,
-            0.384021453
-          ],
-          [
-            0.56,
-            0.385021508
-          ],
-          [
-            0.57,
-            0.386064151
-          ],
-          [
-            0.58,
-            0.387151683
-          ],
-          [
-            0.59,
-            0.388286902
-          ],
-          [
-            0.6,
-            0.38947261
-          ],
-          [
-            0.61,
-            0.390823679
-          ],
-          [
-            0.62,
-            0.392227749
-          ],
-          [
-            0.63,
-            0.393692485
-          ],
-          [
-            0.64,
-            0.395222008
-          ],
-          [
-            0.65,
-            0.396820939
-          ],
-          [
-            0.66,
-            0.398494134
-          ],
-          [
-            0.67,
-            0.400247115
-          ],
-          [
-            0.68,
-            0.402086103
-          ],
-          [
-            0.69,
-            0.404017654
-          ],
-          [
-            0.7,
-            0.406049491
-          ],
-          [
-            0.71,
-            0.405692833
-          ],
-          [
-            0.72,
-            0.405182938
-          ],
-          [
-            0.73,
-            0.404673127
-          ],
-          [
-            0.74,
-            0.404163299
-          ],
-          [
-            0.75,
-            0.403653676
-          ],
-          [
-            0.76,
-            0.403144115
-          ],
-          [
-            0.77,
-            0.402634536
-          ],
-          [
-            0.78,
-            0.402125162
-          ],
-          [
-            0.79,
-            0.401615748
-          ],
-          [
-            0.8,
-            0.401106515
-          ],
-          [
-            0.81,
-            0.406691886
-          ],
-          [
-            0.82,
-            0.412277217
-          ],
-          [
-            0.83,
-            0.417862728
-          ],
-          [
-            0.84,
-            0.423448342
-          ],
-          [
-            0.85,
-            0.429033915
-          ],
-          [
-            0.86,
-            0.434619667
-          ],
-          [
-            0.87,
-            0.440205521
-          ],
-          [
-            0.88,
-            0.445791433
-          ],
-          [
-            0.89,
-            0.451377325
-          ],
-          [
-            0.9,
-            0.456963416
-          ],
-          [
-            0.91,
-            0.460070768
-          ],
-          [
-            0.92,
-            0.469392821
-          ],
-          [
-            0.93,
-            0.486455115
-          ],
-          [
-            0.94,
-            0.506596622
-          ],
-          [
-            0.95,
-            0.526738129
-          ],
-          [
-            0.96,
-            0.546879635
-          ],
-          [
-            0.97,
-            0.567021142
-          ],
-          [
-            0.98,
-            0.587162649
-          ],
-          [
-            0.99,
-            0.607304156
-          ],
-          [
-            1.0,
-            0.627445662
-          ],
-          [
-            1.01,
-            0.647587169
-          ],
-          [
-            1.02,
-            0.667728676
-          ],
-          [
-            1.03,
-            0.687870183
-          ],
-          [
-            1.04,
-            0.708011689
-          ],
-          [
-            1.05,
-            0.728153196
-          ],
-          [
-            1.06,
-            0.724823841
-          ],
-          [
-            1.07,
-            0.721573639
-          ],
-          [
-            1.08,
-            0.718399539
-          ],
-          [
-            1.09,
-            0.715298768
-          ],
-          [
-            1.1,
-            0.712269521
-          ],
-          [
-            1.11,
-            0.709309845
-          ],
-          [
-            1.12,
-            0.706418312
-          ],
-          [
-            1.13,
-            0.703593424
-          ],
-          [
-            1.14,
-            0.700834081
-          ],
-          [
-            1.15,
-            0.698139003
-          ],
-          [
-            1.16,
-            0.695198562
-          ],
-          [
-            1.17,
-            0.692310349
-          ],
-          [
-            1.18,
-            0.689484944
-          ],
-          [
-            1.19,
-            0.686649695
-          ],
-          [
-            1.2,
-            0.683689234
-          ],
-          [
-            1.21,
-            0.680791411
-          ],
-          [
-            1.22,
-            0.677955453
-          ],
-          [
-            1.23,
-            0.675180983
-          ],
-          [
-            1.24,
-            0.672467031
-          ],
-          [
-            1.25,
-            0.669813183
-          ],
-          [
-            1.26,
-            0.667218931
-          ],
-          [
-            1.27,
-            0.664683659
-          ],
-          [
-            1.28,
-            0.662207006
-          ],
-          [
-            1.29,
-            0.658958242
-          ],
-          [
-            1.3,
-            0.655696788
-          ],
-          [
-            1.31,
-            0.652482071
-          ],
-          [
-            1.32,
-            0.649313067
-          ],
-          [
-            1.33,
-            0.646188665
-          ],
-          [
-            1.34,
-            0.643107891
-          ],
-          [
-            1.35,
-            0.640069748
-          ],
-          [
-            1.36,
-            0.63707329
-          ],
-          [
-            1.37,
-            0.634117922
-          ],
-          [
-            1.38,
-            0.631202794
-          ],
-          [
-            1.39,
-            0.628327073
-          ],
-          [
-            1.4,
-            0.625490308
-          ],
-          [
-            1.41,
-            0.622691519
-          ],
-          [
-            1.42,
-            0.619930492
-          ],
-          [
-            1.43,
-            0.617206358
-          ],
-          [
-            1.44,
-            0.614518793
-          ],
-          [
-            1.45,
-            0.611867277
-          ],
-          [
-            1.46,
-            0.609251142
-          ],
-          [
-            1.47,
-            0.606670082
-          ],
-          [
-            1.48,
-            0.604123714
-          ],
-          [
-            1.49,
-            0.601611411
-          ],
-          [
-            1.5,
-            0.599132922
-          ],
-          [
-            1.51,
-            0.596687849
-          ],
-          [
-            1.52,
-            0.594275965
-          ],
-          [
-            1.53,
-            0.591896725
-          ],
-          [
-            1.54,
-            0.589549659
-          ],
-          [
-            1.55,
-            0.587234882
-          ],
-          [
-            1.56,
-            0.584951742
-          ],
-          [
-            1.57,
-            0.582700041
-          ],
-          [
-            1.58,
-            0.580479567
-          ],
-          [
-            1.59,
-            0.578289812
-          ],
-          [
-            1.6,
-            0.576130805
-          ],
-          [
-            1.61,
-            0.574002135
-          ],
-          [
-            1.62,
-            0.571903631
-          ],
-          [
-            1.63,
-            0.569835013
-          ],
-          [
-            1.64,
-            0.567796001
-          ],
-          [
-            1.65,
-            0.565786432
-          ],
-          [
-            1.66,
-            0.563806137
-          ],
-          [
-            1.67,
-            0.561854848
-          ],
-          [
-            1.68,
-            0.559932409
-          ],
-          [
-            1.69,
-            0.558038559
-          ],
-          [
-            1.7,
-            0.556173065
-          ],
-          [
-            1.71,
-            0.554336047
-          ],
-          [
-            1.72,
-            0.552526984
-          ],
-          [
-            1.73,
-            0.550745911
-          ],
-          [
-            1.74,
-            0.548992581
-          ],
-          [
-            1.75,
-            0.547266786
-          ],
-          [
-            1.76,
-            0.545568552
-          ],
-          [
-            1.77,
-            0.543897563
-          ],
-          [
-            1.78,
-            0.542253679
-          ],
-          [
-            1.79,
-            0.54063688
-          ],
-          [
-            1.8,
-            0.539046907
-          ],
-          [
-            1.81,
-            0.53764434
-          ],
-          [
-            1.82,
-            0.536217646
-          ],
-          [
-            1.83,
-            0.534799494
-          ],
-          [
-            1.84,
-            0.53338978
-          ],
-          [
-            1.85,
-            0.531988364
-          ],
-          [
-            1.86,
-            0.530595145
-          ],
-          [
-            1.87,
-            0.529209996
-          ],
-          [
-            1.88,
-            0.527832797
-          ],
-          [
-            1.89,
-            0.526463462
-          ],
-          [
-            1.9,
-            0.525101881
-          ],
-          [
-            1.91,
-            0.523747949
-          ],
-          [
-            1.92,
-            0.52240154
-          ],
-          [
-            1.93,
-            0.521062597
-          ],
-          [
-            1.94,
-            0.519730988
-          ],
-          [
-            1.95,
-            0.51840665
-          ],
-          [
-            1.96,
-            0.517089486
-          ],
-          [
-            1.97,
-            0.515779376
-          ],
-          [
-            1.98,
-            0.514476265
-          ],
-          [
-            1.99,
-            0.513180047
-          ],
-          [
-            2.0,
-            0.511890654
-          ]
-        ],
-        "title": "Drag Coefficient With Power On x Mach Number",
-        "inputs": [
-          "Mach Number"
-        ],
-        "outputs": [
-          "Drag Coefficient with Power On"
-        ],
-        "interpolation": "linear",
-        "extrapolation": "constant",
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "center_of_mass_without_motor": 0,
-      "coordinate_system_orientation": "tail_to_nose",
-      "motor": {
-        "thrust_source": {
-          "source": [
-            [
-              0.0,
-              0.0
-            ],
-            [
-              0.055,
-              100.0
-            ],
-            [
-              0.092,
-              1500.0
-            ],
-            [
-              0.1,
-              2000.0
-            ],
-            [
-              0.15,
-              2200.0
-            ],
-            [
-              0.2,
-              1800.0
-            ],
-            [
-              0.5,
-              1950.0
-            ],
-            [
-              1.0,
-              2034.0
-            ],
-            [
-              1.5,
-              2000.0
-            ],
-            [
-              2.0,
-              1900.0
-            ],
-            [
-              2.5,
-              1760.0
-            ],
-            [
-              2.9,
-              1700.0
-            ],
-            [
-              3.0,
-              1650.0
-            ],
-            [
-              3.3,
-              530.0
-            ],
-            [
-              3.4,
-              350.0
-            ],
-            [
-              3.9,
-              0.0
-            ]
-          ],
-          "title": "Thrust (N) x Time (S)",
-          "inputs": [
-            "Time (s)"
-          ],
-          "outputs": [
-            "Thrust (N)"
-          ],
-          "interpolation": "linear",
-          "extrapolation": "zero",
-          "signature": {
-            "module": "rocketpy.mathutils.function",
-            "name": "Function"
-          }
-        },
-        "dry_I_11": 0.125,
-        "dry_I_22": 0.125,
-        "dry_I_33": 0.002,
-        "dry_I_12": 0,
-        "dry_I_13": 0,
-        "dry_I_23": 0,
-        "nozzle_radius": 0.033,
-        "center_of_dry_mass_position": 0.317,
-        "dry_mass": 1.815,
-        "nozzle_position": 0,
-        "burn_time": [
-          0,
-          3.9
-        ],
-        "interpolate": "linear",
-        "coordinate_system_orientation": "nozzle_to_combustion_chamber",
-        "throat_radius": 0.011,
-        "grain_number": 5,
-        "grain_density": 1815,
-        "grain_outer_radius": 0.033,
-        "grain_initial_inner_radius": 0.015,
-        "grain_initial_height": 0.12,
-        "grain_separation": 0.005,
-        "grains_center_of_mass_position": 0.397,
-        "signature": {
-          "module": "rocketpy.motors.solid_motor",
-          "name": "SolidMotor"
-        }
-      },
-      "motor_position": -1.373,
-      "aerodynamic_surfaces": [
-        [
-          {
-            "_length": 0.55829,
-            "_kind": "vonkarman",
-            "_base_radius": 0.0635,
-            "_bluffness": null,
-            "_rocket_radius": 0.0635,
-            "_power": null,
-            "name": "calisto_nose_cone",
-            "signature": {
-              "module": "rocketpy.rocket.aero_surface.nose_cone",
-              "name": "NoseCone"
-            }
-          },
-          [
-            0,
-            0,
-            1.16
-          ]
-        ],
-        [
-          {
-            "top_radius": 0.0635,
-            "bottom_radius": 0.0435,
-            "length": 0.06,
-            "rocket_radius": 0.0635,
-            "name": "calisto_tail",
-            "signature": {
-              "module": "rocketpy.rocket.aero_surface.tail",
-              "name": "Tail"
-            }
-          },
-          [
-            0,
-            0,
-            -1.313
-          ]
-        ],
-        [
-          {
-            "n": 4,
-            "root_chord": 0.12,
-            "span": 0.1,
-            "rocket_radius": 0.0635,
-            "cant_angle": 0,
-            "airfoil": null,
-            "name": "calisto_trapezoidal_fins",
-            "tip_chord": 0.04,
-            "signature": {
-              "module": "rocketpy.rocket.aero_surface.fins.trapezoidal_fins",
-              "name": "TrapezoidalFins"
-            }
-          },
-          [
-            0,
-            0,
-            -1.168
-          ]
-        ]
-      ],
-      "rail_buttons": [
-        [
-          {
-            "buttons_distance": 0.7,
-            "angular_position": 0,
-            "name": "Rail Buttons",
-            "rocket_radius": 0.0635,
-            "signature": {
-              "module": "rocketpy.rocket.aero_surface.rail_buttons",
-              "name": "RailButtons"
-            }
-          },
-          [
-            -0.0,
-            0.0635,
-            -0.618
-          ]
-        ]
-      ],
-      "parachutes": [
-        {
-          "name": "calisto_main_chute",
-          "cd_s": 10.0,
-          "trigger": "664351444f3052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32307340707631347b72293038305a29302174475e447750304c3023674136303030307d30792b572130366855483030303030303030314331706f6a62303936347e313343662330332d6d45437b395a534f386077453139582572697e283f7a697e287172697e29492b686d3f2376563e283c3f5a29306d5e62576e4c2a62592a6a4e62366a523d637978376757706939605652422828586d78614462366a763f612423643d62232148345740266849622369354d455e7639326a307c6d49583e4d50316125704630577062325e472d467c47583e29584d55757c4a265a654d553d612423643d62232148346261483844584a76394f4a5a7860635651683067455e5433485a654d6841583d69363b612b4649554c6d37596f3b31335878357337713d5654704c78343c6e6443706159706c263c473d784c6a615531445268296c6c77292a6462393865715740266849622369354d455e754c5456506a7d4062592a6963614139266056607a3142576e583423637978376757706648265575303d78625945577a58626e7a4962642a772a6555794561443278775a5574772d3b5a2a2a6146583e563f4755746734636c23433274557659497c593b49767e576e572a4558627946546c77764c",
-          "sampling_rate": 105,
-          "lag": 1.5,
-          "noise": [
-            0,
-            8.3,
-            0.5
-          ],
-          "signature": {
-            "module": "rocketpy.rocket.parachute",
-            "name": "Parachute"
-          }
-        },
-        {
-          "name": "calisto_drogue_chute",
-          "cd_s": 1.0,
-          "trigger": "66435143403052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32307340707631347b72293038305a29302174475e357c73637c3023674136303030307d30792b572130332d6d4550443d2423304564282a697e283f7a697e287172697e29492b686d3f2376563e283c3f5a29306d5e62576e4c2a62592a6a4e62366a523d637978376757706939605652422828586d78614462366a763f612423643d62232148345740266849622369354d455e7639326a314658535a2962493755767a5335584a3d287b6c23446f495651677530625a3d697c61264b704b576e585925612423643d62232148346261483844584a76394f4a5a78606356516830674540583056584c56263f6261483844584a7641664f41746433664240685235526567786264585f2a6321263e5f4c6a615531445268296c6c77292a6462393865715740266849622369354d455e754c5456506a7d4062592a6963614139266056607a3142576e583423637978376757706648265575303d78625945577a58626e7a4962642a772a6555794561443278775a5574772d3b5a2a2a6146583e563f4755746734636c23433274557659497c593b49767e576e572a4558627946546c77764c",
-          "sampling_rate": 105,
-          "lag": 1.5,
-          "noise": [
-            0,
-            8.3,
-            0.5
-          ],
-          "signature": {
-            "module": "rocketpy.rocket.parachute",
-            "name": "Parachute"
-          }
-        }
-      ],
-      "air_brakes": [],
-      "_controllers": [],
-      "sensors": [],
-      "signature": {
-        "module": "rocketpy.rocket.rocket",
-        "name": "Rocket"
-      }
-    },
-    "env": {
-      "gravity": {
-        "source": [
-          [
-            0.0,
-            9.795652669148597
-          ],
-          [
-            808.0808080808081,
-            9.793159061704268
-          ],
-          [
-            1616.1616161616162,
-            9.790666397683085
-          ],
-          [
-            2424.242424242424,
-            9.788174677085044
-          ],
-          [
-            3232.3232323232323,
-            9.785683899910145
-          ],
-          [
-            4040.4040404040406,
-            9.78319406615839
-          ],
-          [
-            4848.484848484848,
-            9.78070517582978
-          ],
-          [
-            5656.565656565656,
-            9.778217228924312
-          ],
-          [
-            6464.646464646465,
-            9.775730225441988
-          ],
-          [
-            7272.727272727273,
-            9.773244165382808
-          ],
-          [
-            8080.808080808081,
-            9.77075904874677
-          ],
-          [
-            8888.888888888889,
-            9.768274875533876
-          ],
-          [
-            9696.969696969696,
-            9.765791645744127
-          ],
-          [
-            10505.050505050505,
-            9.76330935937752
-          ],
-          [
-            11313.131313131313,
-            9.760828016434056
-          ],
-          [
-            12121.212121212122,
-            9.758347616913735
-          ],
-          [
-            12929.29292929293,
-            9.755868160816558
-          ],
-          [
-            13737.373737373737,
-            9.753389648142525
-          ],
-          [
-            14545.454545454546,
-            9.750912078891636
-          ],
-          [
-            15353.535353535353,
-            9.74843545306389
-          ],
-          [
-            16161.616161616163,
-            9.745959770659285
-          ],
-          [
-            16969.696969696968,
-            9.743485031677826
-          ],
-          [
-            17777.777777777777,
-            9.74101123611951
-          ],
-          [
-            18585.858585858587,
-            9.738538383984336
-          ],
-          [
-            19393.939393939392,
-            9.736066475272306
-          ],
-          [
-            20202.0202020202,
-            9.73359550998342
-          ],
-          [
-            21010.10101010101,
-            9.731125488117678
-          ],
-          [
-            21818.18181818182,
-            9.728656409675079
-          ],
-          [
-            22626.262626262625,
-            9.726188274655623
-          ],
-          [
-            23434.343434343435,
-            9.72372108305931
-          ],
-          [
-            24242.424242424244,
-            9.72125483488614
-          ],
-          [
-            25050.50505050505,
-            9.718789530136116
-          ],
-          [
-            25858.58585858586,
-            9.716325168809234
-          ],
-          [
-            26666.666666666668,
-            9.713861750905496
-          ],
-          [
-            27474.747474747473,
-            9.711399276424899
-          ],
-          [
-            28282.828282828283,
-            9.708937745367447
-          ],
-          [
-            29090.909090909092,
-            9.706477157733138
-          ],
-          [
-            29898.989898989897,
-            9.704017513521974
-          ],
-          [
-            30707.070707070707,
-            9.701558812733952
-          ],
-          [
-            31515.151515151516,
-            9.699101055369074
-          ],
-          [
-            32323.232323232325,
-            9.696644241427338
-          ],
-          [
-            33131.31313131313,
-            9.694188370908746
-          ],
-          [
-            33939.393939393936,
-            9.691733443813298
-          ],
-          [
-            34747.47474747475,
-            9.689279460140995
-          ],
-          [
-            35555.555555555555,
-            9.686826419891833
-          ],
-          [
-            36363.63636363636,
-            9.684374323065816
-          ],
-          [
-            37171.71717171717,
-            9.68192316966294
-          ],
-          [
-            37979.79797979798,
-            9.67947295968321
-          ],
-          [
-            38787.878787878784,
-            9.677023693126623
-          ],
-          [
-            39595.9595959596,
-            9.674575369993178
-          ],
-          [
-            40404.0404040404,
-            9.672127990282878
-          ],
-          [
-            41212.121212121216,
-            9.66968155399572
-          ],
-          [
-            42020.20202020202,
-            9.667236061131705
-          ],
-          [
-            42828.28282828283,
-            9.664791511690835
-          ],
-          [
-            43636.36363636364,
-            9.662347905673109
-          ],
-          [
-            44444.444444444445,
-            9.659905243078523
-          ],
-          [
-            45252.52525252525,
-            9.657463523907083
-          ],
-          [
-            46060.606060606064,
-            9.655022748158785
-          ],
-          [
-            46868.68686868687,
-            9.652582915833632
-          ],
-          [
-            47676.767676767675,
-            9.650144026931622
-          ],
-          [
-            48484.84848484849,
-            9.647706081452755
-          ],
-          [
-            49292.92929292929,
-            9.645269079397032
-          ],
-          [
-            50101.0101010101,
-            9.642833020764453
-          ],
-          [
-            50909.09090909091,
-            9.640397905555016
-          ],
-          [
-            51717.17171717172,
-            9.637963733768723
-          ],
-          [
-            52525.25252525252,
-            9.635530505405573
-          ],
-          [
-            53333.333333333336,
-            9.633098220465566
-          ],
-          [
-            54141.41414141414,
-            9.630666878948704
-          ],
-          [
-            54949.49494949495,
-            9.628236480854984
-          ],
-          [
-            55757.57575757576,
-            9.625807026184408
-          ],
-          [
-            56565.656565656565,
-            9.623378514936975
-          ],
-          [
-            57373.73737373737,
-            9.620950947112686
-          ],
-          [
-            58181.818181818184,
-            9.61852432271154
-          ],
-          [
-            58989.89898989899,
-            9.616098641733537
-          ],
-          [
-            59797.979797979795,
-            9.613673904178679
-          ],
-          [
-            60606.06060606061,
-            9.611250110046964
-          ],
-          [
-            61414.14141414141,
-            9.60882725933839
-          ],
-          [
-            62222.22222222222,
-            9.606405352052962
-          ],
-          [
-            63030.30303030303,
-            9.603984388190677
-          ],
-          [
-            63838.38383838384,
-            9.601564367751534
-          ],
-          [
-            64646.46464646465,
-            9.599145290735535
-          ],
-          [
-            65454.545454545456,
-            9.59672715714268
-          ],
-          [
-            66262.62626262626,
-            9.594309966972968
-          ],
-          [
-            67070.70707070707,
-            9.5918937202264
-          ],
-          [
-            67878.78787878787,
-            9.589478416902974
-          ],
-          [
-            68686.8686868687,
-            9.587064057002694
-          ],
-          [
-            69494.9494949495,
-            9.584650640525554
-          ],
-          [
-            70303.0303030303,
-            9.58223816747156
-          ],
-          [
-            71111.11111111111,
-            9.579826637840709
-          ],
-          [
-            71919.19191919192,
-            9.577416051633001
-          ],
-          [
-            72727.27272727272,
-            9.575006408848436
-          ],
-          [
-            73535.35353535354,
-            9.572597709487015
-          ],
-          [
-            74343.43434343435,
-            9.570189953548738
-          ],
-          [
-            75151.51515151515,
-            9.567783141033603
-          ],
-          [
-            75959.59595959596,
-            9.565377271941612
-          ],
-          [
-            76767.67676767676,
-            9.562972346272765
-          ],
-          [
-            77575.75757575757,
-            9.560568364027061
-          ],
-          [
-            78383.83838383839,
-            9.5581653252045
-          ],
-          [
-            79191.9191919192,
-            9.555763229805082
-          ],
-          [
-            80000.0,
-            9.553362077828808
-          ]
-        ],
-        "title": "Gravity (M/S\u00b2) x Height (M)",
-        "inputs": [
-          "height (m)"
-        ],
-        "outputs": [
-          "gravity (m/s\u00b2)"
-        ],
-        "interpolation": "spline",
-        "extrapolation": "constant",
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "date": [
-        2025,
-        3,
-        29,
-        15
-      ],
-      "latitude": 32.990254,
-      "longitude": -106.974998,
-      "elevation": 1400,
-      "datum": "WGS84",
-      "timezone": "UTC",
-      "max_expected_height": 80000,
-      "atmospheric_model_type": "standard_atmosphere",
-      "pressure": {
-        "source": [
-          [
-            0.0,
-            101325.0
-          ],
-          [
-            808.0808080808081,
-            91987.7190736821
-          ],
-          [
-            1616.1616161616162,
-            83361.82512452437
-          ],
-          [
-            2424.242424242424,
-            75404.85002451327
-          ],
-          [
-            3232.3232323232323,
-            68076.13913989047
-          ],
-          [
-            4040.4040404040406,
-            61336.80542875398
-          ],
-          [
-            4848.484848484848,
-            55149.6839076808
-          ],
-          [
-            5656.565656565656,
-            49479.28648882014
-          ],
-          [
-            6464.646464646465,
-            44291.75718899091
-          ],
-          [
-            7272.727272727273,
-            39554.8277124111
-          ],
-          [
-            8080.808080808081,
-            35237.77340878227
-          ],
-          [
-            8888.888888888889,
-            31311.369608556404
-          ],
-          [
-            9696.969696969696,
-            27747.848337320425
-          ],
-          [
-            10505.050505050505,
-            24520.85541135015
-          ],
-          [
-            11313.131313131313,
-            21609.78655018426
-          ],
-          [
-            12121.212121212122,
-            19033.26274375408
-          ],
-          [
-            12929.29292929293,
-            16764.474771267724
-          ],
-          [
-            13737.373737373737,
-            14766.602969629348
-          ],
-          [
-            14545.454545454546,
-            13007.240706939541
-          ],
-          [
-            15353.535353535353,
-            11457.864539417797
-          ],
-          [
-            16161.616161616163,
-            10093.368093092535
-          ],
-          [
-            16969.696969696968,
-            8891.651992797142
-          ],
-          [
-            17777.777777777777,
-            7833.263087569549
-          ],
-          [
-            18585.858585858587,
-            6901.077036098035
-          ],
-          [
-            19393.939393939392,
-            6080.019031951716
-          ],
-          [
-            20202.0202020202,
-            5356.857540200649
-          ],
-          [
-            21010.10101010101,
-            4721.30991526769
-          ],
-          [
-            21818.18181818182,
-            4163.232875682235
-          ],
-          [
-            22626.262626262625,
-            3672.933313335594
-          ],
-          [
-            23434.343434343435,
-            3241.96189056941
-          ],
-          [
-            24242.424242424244,
-            2862.9495069519526
-          ],
-          [
-            25050.50505050505,
-            2529.4657811142115
-          ],
-          [
-            25858.58585858586,
-            2235.8965154219945
-          ],
-          [
-            26666.666666666668,
-            1977.3375382595987
-          ],
-          [
-            27474.747474747473,
-            1749.502684263471
-          ],
-          [
-            28282.828282828283,
-            1548.643985995348
-          ],
-          [
-            29090.909090909092,
-            1371.4824189575293
-          ],
-          [
-            29898.989898989897,
-            1215.147772053759
-          ],
-          [
-            30707.070707070707,
-            1077.1264131440405
-          ],
-          [
-            31515.151515151516,
-            955.2158889599972
-          ],
-          [
-            32323.232323232325,
-            847.499978875429
-          ],
-          [
-            33131.31313131313,
-            752.6468464013102
-          ],
-          [
-            33939.393939393936,
-            669.1943201981346
-          ],
-          [
-            34747.47474747475,
-            595.6797652851934
-          ],
-          [
-            35555.555555555555,
-            530.8398105331449
-          ],
-          [
-            36363.63636363636,
-            473.5816498223962
-          ],
-          [
-            37171.71717171717,
-            422.95869580802866
-          ],
-          [
-            37979.79797979798,
-            378.14989351611064
-          ],
-          [
-            38787.878787878784,
-            338.4421163601665
-          ],
-          [
-            39595.9595959596,
-            303.21516248578837
-          ],
-          [
-            40404.0404040404,
-            271.9289482508904
-          ],
-          [
-            41212.121212121216,
-            244.1125610731998
-          ],
-          [
-            42020.20202020202,
-            219.3548882212263
-          ],
-          [
-            42828.28282828283,
-            197.29658334344018
-          ],
-          [
-            43636.36363636364,
-            177.62317021852115
-          ],
-          [
-            44444.444444444445,
-            160.0591146730051
-          ],
-          [
-            45252.52525252525,
-            144.36272192209393
-          ],
-          [
-            46060.606060606064,
-            130.32173862399574
-          ],
-          [
-            46868.68686868687,
-            117.74955742138306
-          ],
-          [
-            47676.767676767675,
-            106.47484007806983
-          ],
-          [
-            48484.84848484849,
-            96.29612629300844
-          ],
-          [
-            49292.92929292929,
-            87.09267112410951
-          ],
-          [
-            50101.0101010101,
-            78.77082110971176
-          ],
-          [
-            50909.09090909091,
-            71.24593644891102
-          ],
-          [
-            51717.17171717172,
-            64.43744165841878
-          ],
-          [
-            52525.25252525252,
-            58.24214298057
-          ],
-          [
-            53333.333333333336,
-            52.599403212707756
-          ],
-          [
-            54141.41414141414,
-            47.463832279428956
-          ],
-          [
-            54949.49494949495,
-            42.79344497470941
-          ],
-          [
-            55757.57575757576,
-            38.549430108466424
-          ],
-          [
-            56565.656565656565,
-            34.69593362379314
-          ],
-          [
-            57373.73737373737,
-            31.19985494191285
-          ],
-          [
-            58181.818181818184,
-            28.03065582593985
-          ],
-          [
-            58989.89898989899,
-            25.160181087260145
-          ],
-          [
-            59797.979797979795,
-            22.56249048980449
-          ],
-          [
-            60606.06060606061,
-            20.213701237719714
-          ],
-          [
-            61414.14141414141,
-            18.091840460982535
-          ],
-          [
-            62222.22222222222,
-            16.176707141392633
-          ],
-          [
-            63030.30303030303,
-            14.449742948155004
-          ],
-          [
-            63838.38383838384,
-            12.893911477959598
-          ],
-          [
-            64646.46464646465,
-            11.493585419118016
-          ],
-          [
-            65454.545454545456,
-            10.234441182963137
-          ],
-          [
-            66262.62626262626,
-            9.103360568384003
-          ],
-          [
-            67070.70707070707,
-            8.088339047096008
-          ],
-          [
-            67878.78787878787,
-            7.178400278058695
-          ],
-          [
-            68686.8686868687,
-            6.363516479389216
-          ],
-          [
-            69494.9494949495,
-            5.63453430520159
-          ],
-          [
-            70303.0303030303,
-            4.983105893065587
-          ],
-          [
-            71111.11111111111,
-            4.401624765249175
-          ],
-          [
-            71919.19191919192,
-            3.883187463774612
-          ],
-          [
-            72727.27272727272,
-            3.422284009324427
-          ],
-          [
-            73535.35353535354,
-            3.01334416315519
-          ],
-          [
-            74343.43434343435,
-            2.6508221542533925
-          ],
-          [
-            75151.51515151515,
-            2.3297303200744794
-          ],
-          [
-            75959.59595959596,
-            2.045586374944322
-          ],
-          [
-            76767.67676767676,
-            1.7943653328057088
-          ],
-          [
-            77575.75757575757,
-            1.5724557027121977
-          ],
-          [
-            78383.83838383839,
-            1.3766196043424184
-          ],
-          [
-            79191.9191919192,
-            1.2039564776776897
-          ],
-          [
-            80000.0,
-            1.0518700859818015
-          ]
-        ],
-        "title": "Pressure (Pa) x Height Above Sea Level (M)",
-        "inputs": [
-          "Height Above Sea Level (m)"
-        ],
-        "outputs": [
-          "Pressure (Pa)"
-        ],
-        "interpolation": "spline",
-        "extrapolation": "natural",
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "temperature": {
-        "source": [
-          [
-            -1999.3730505791445,
-            301.15
-          ],
-          [
-            0.0,
-            288.15
-          ],
-          [
-            11019.003942140063,
-            216.65
-          ],
-          [
-            20062.911876189428,
-            216.65
-          ],
-          [
-            32161.358944863776,
-            228.65
-          ],
-          [
-            47348.91251125397,
-            270.65
-          ],
-          [
-            51411.08880845885,
-            270.65
-          ],
-          [
-            71799.25797910291,
-            214.65
-          ],
-          [
-            81016.17948270113,
-            196.65
-          ]
-        ],
-        "title": "Temperature (K) x Height Above Sea Level (M)",
-        "inputs": [
-          "Height Above Sea Level (m)"
-        ],
-        "outputs": [
-          "Temperature (K)"
-        ],
-        "interpolation": "linear",
-        "extrapolation": "constant",
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "wind_velocity_x": {
-        "source": "66435144713052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403274454f6f30387b7d6130462b4c4a6c71726b3e557a434e456a3445527e547642676959686070246430635844567b32747d61437579395652554739625a4b6d4a54784e417b567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c756836614c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
-        "title": "Wind Velocity X (M/S) x Height Above Sea Level (M)",
-        "inputs": [
-          "Height Above Sea Level (m)"
-        ],
-        "outputs": [
-          "Wind Velocity X (m/s)"
-        ],
-        "interpolation": null,
-        "extrapolation": null,
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "wind_velocity_y": {
-        "source": "66435144713052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403274454f6f30387b7d6130462b4c4a6c71726b3e557a434e456a3445527e547642676959686070246430635844567b32747d61437579395652554739625a4b6d4a54784e417b567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c756836614c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
-        "title": "Wind Velocity Y (M/S) x Height Above Sea Level (M)",
-        "inputs": [
-          "Height Above Sea Level (m)"
-        ],
-        "outputs": [
-          "Wind Velocity Y (m/s)"
-        ],
-        "interpolation": null,
-        "extrapolation": null,
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "wind_heading": {
-        "source": "66435144713052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403274454f6f30387b7d6130462b4c4a6c71726b3e557a434e456a3445527e547642676959686070246430635844567b32747d61437579395652554739625a4b6d4a54784e417b567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c756836614c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
-        "title": "Wind Heading (Deg True) x Height Above Sea Level (M)",
-        "inputs": [
-          "Height Above Sea Level (m)"
-        ],
-        "outputs": [
-          "Wind Heading (Deg True)"
-        ],
-        "interpolation": null,
-        "extrapolation": null,
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "wind_direction": {
-        "source": "66435144713052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403274454f6f30387b7d6130462b4c4a6c71726b3e557a434e456a3445527e547642676959686070246430635844567b32747d61437579395652554739625a4b6d4a54784e417b567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c756836614c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
-        "title": "Wind Direction (Deg True) x Height Above Sea Level (M)",
-        "inputs": [
-          "Height Above Sea Level (m)"
-        ],
-        "outputs": [
-          "Wind Direction (Deg True)"
-        ],
-        "interpolation": null,
-        "extrapolation": null,
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "wind_speed": {
-        "source": "66435144713052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403274454f6f30387b7d6130462b4c4a6c71726b3e557a434e456a3445527e547642676959686070246430635844567b32747d61437579395652554739625a4b6d4a54784e417b567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c756836614c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
-        "title": "Wind Speed (M/S) x Height Above Sea Level (M)",
-        "inputs": [
-          "Height Above Sea Level (m)"
-        ],
-        "outputs": [
-          "Wind Speed (m/s)"
-        ],
-        "interpolation": null,
-        "extrapolation": null,
-        "signature": {
-          "module": "rocketpy.mathutils.function",
-          "name": "Function"
-        }
-      },
-      "signature": {
-        "module": "rocketpy.environment.environment",
-        "name": "Environment"
-      }
-    },
-    "rail_length": 5.2,
-    "inclination": 85,
-    "heading": 0,
-    "initial_solution": [
-      0,
-      0,
-      0,
-      1400,
-      0,
-      0,
-      0,
-      0.9990482215818578,
-      -0.043619387365336,
-      0.0,
-      0.0,
-      0,
-      0,
-      0
-    ],
-    "terminate_on_apogee": false,
-    "max_time": 600,
-    "max_time_step": Infinity,
-    "min_time_step": 0,
-    "rtol": 1e-06,
-    "atol": [
-      0.001,
-      0.001,
-      0.001,
-      0.001,
-      0.001,
-      0.001,
-      1e-06,
-      1e-06,
-      1e-06,
-      1e-06,
-      0.001,
-      0.001,
-      0.001
-    ],
-    "time_overshoot": true,
-    "name": "Flight",
-    "equations_of_motion": "standard",
-    "solution": [
-      [
-        0,
-        0,
-        0,
-        1400,
-        0,
-        0,
-        0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0,
-        0,
-        0
-      ],
-      [
-        0.0014095582940420635,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.002819116588084127,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.005638233176168254,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.008457349764252381,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.011276466352336508,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.03946763223317778,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.04085528032083424,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.042242928408490706,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.045018224583803626,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.047793520759116546,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.05056881693442947,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.051535065794346184,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.0525013146542629,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.05443381237409633,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.056366310093929756,
-        0.0,
-        0.0,
-        1400.0,
-        0.0,
-        0.0,
-        0.0,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.05829880781376318,
-        0.0,
-        1.593386495603789e-07,
-        1400.000001821249,
-        0.0,
-        0.00016490435966964246,
-        0.0018848654559773814,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.06066778422868188,
-        0.0,
-        1.5999327428028959e-06,
-        1400.0000182873148,
-        0.0,
-        0.0010513121322304557,
-        0.012016552657921661,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.06303676064360057,
-        0.0,
-        6.282544407486012e-06,
-        1400.000071809811,
-        0.0,
-        0.002901966283182682,
-        0.033169626397627994,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.06540573705851926,
-        0.0,
-        1.649153969867526e-05,
-        1400.0001884991614,
-        0.0,
-        0.0057169420579103875,
-        0.0653449467337718,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.08909550120770625,
-        0.0,
-        0.0009139678884234187,
-        1400.0104467007677,
-        0.0,
-        0.08693249560839533,
-        0.9936429716135294,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.09280001741842829,
-        0.0,
-        0.0012760099041932446,
-        1400.0145848599439,
-        0.0,
-        0.10852731342677238,
-        1.2404728687461815,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.09574786203389758,
-        0.0,
-        0.00162466055529091,
-        1400.0185699551212,
-        0.0,
-        0.12801883886883195,
-        1.4632620240095255,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.09869570664936687,
-        0.0,
-        0.002034411599166814,
-        1400.0232534309837,
-        0.0,
-        0.14998159672967476,
-        1.7142974950718417,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.10099207719472714,
-        0.0,
-        0.0024000882236054288,
-        1400.027433133927,
-        0.0,
-        0.16850064940357085,
-        1.9259712357320662,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.1032884477400874,
-        0.0,
-        0.002808861536079075,
-        1400.0321054342685,
-        0.0,
-        0.18751620837057603,
-        2.1433200692911782,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.10558481828544766,
-        0.0,
-        0.003261414552761185,
-        1400.0372781389187,
-        0.0,
-        0.20663012647331477,
-        2.361793152916179,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.11017755937616817,
-        0.0,
-        0.00429887652023586,
-        1400.0491363834692,
-        0.0,
-        0.24515321901958195,
-        2.802114115584129,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.11477030046688869,
-        0.0,
-        0.005514169642170655,
-        1400.063027247416,
-        0.0,
-        0.2840702220270839,
-        3.246937495426596,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.1193630415576092,
-        0.0,
-        0.006909103568871208,
-        1400.078971415157,
-        0.0,
-        0.3233813626128569,
-        3.6962658884031856,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.13127045763130013,
-        0.0,
-        0.011377483524571451,
-        1400.1300452317591,
-        0.0,
-        0.4271391412442598,
-        4.882222724978455,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.14317787370499105,
-        0.0,
-        0.017097157058734137,
-        1400.1954213994095,
-        0.0,
-        0.5335518262245469,
-        6.098525279980404,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.14995992644651876,
-        0.0,
-        0.020925290031172335,
-        1400.2391771595064,
-        0.0,
-        0.5953491476348817,
-        6.804871895871084,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.1542011028620784,
-        0.0,
-        0.023532118227763178,
-        1400.2689733421378,
-        0.0,
-        0.6339457204867404,
-        7.246032742275168,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.15844227927763802,
-        0.0,
-        0.02630128019656048,
-        1400.300625008276,
-        0.0,
-        0.6719004420678693,
-        7.679857195084215,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.16268345569319764,
-        0.0,
-        0.029230042749290468,
-        1400.334100917436,
-        0.0,
-        0.709208130562105,
-        8.106286025868458,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.1711658085243169,
-        0.0,
-        0.03555401296684309,
-        1400.4063842277837,
-        0.0,
-        0.7818805669995684,
-        8.936935775317764,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.17964816135543615,
-        0.0,
-        0.042483417986622474,
-        1400.4855876895867,
-        0.0,
-        0.8519597501610404,
-        9.73794450418818,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.1881305141865554,
-        0.0,
-        0.049996245556133974,
-        1400.5714597016479,
-        0.0,
-        0.9194420576353929,
-        10.50927080813105,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.19446574773727407,
-        0.0,
-        0.05597540392235055,
-        1400.6398017945003,
-        0.0,
-        0.9681468744659042,
-        11.065969411900209,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.20080098128799273,
-        0.0,
-        0.062258832651864375,
-        1400.7116217135194,
-        0.0,
-        1.0154986141714581,
-        11.60720227336143,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.2056611859339936,
-        0.0,
-        0.06728154747756332,
-        1400.769031606679,
-        0.0,
-        1.0513751825319975,
-        12.017273326165986,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.21052139057999447,
-        0.0,
-        0.07247878137297036,
-        1400.8284362619331,
-        0.0,
-        1.0873141384136513,
-        12.42805747159992,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.21538159522599534,
-        0.0,
-        0.07785083758959374,
-        1400.8898391454625,
-        0.0,
-        1.1233154987738811,
-        12.839554903487906,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.22510200451799706,
-        0.0,
-        0.0891205294339207,
-        1401.018652312679,
-        0.0,
-        1.1955055151966636,
-        13.66469056693751,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.23482241380999877,
-        0.0,
-        0.10109320291779095,
-        1401.1555005968034,
-        0.0,
-        1.2679454746984593,
-        14.49268309285295,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.24454282310200048,
-        0.0,
-        0.11377123803918554,
-        1401.3004112013373,
-        0.0,
-        1.3406355766701183,
-        15.32353476028207,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.2542632323940022,
-        0.0,
-        0.12715706655119152,
-        1401.4534119213454,
-        0.0,
-        1.4135758468843036,
-        16.157245863807756,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.35146732531401936,
-        0.0,
-        0.30048041846241863,
-        1403.4345068989805,
-        0.0,
-        2.15677351854452,
-        24.65203412217448,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.3632465986442917,
-        0.0,
-        0.32642578297190916,
-        1403.7310637723383,
-        0.0,
-        2.2485420402245744,
-        25.700953124724595,
-        0.9990482215818578,
-        -0.043619387365336,
-        0.0,
-        0.0,
-        0.0,
-        0.0,
-        0.0
-      ],
-      [
-        0.3693545968582991,
-        0.0,
-        0.34048336705142834,
-        1403.8913775153976,
-        0.0,
-        2.3015042834181405,
-        26.24652744238398,
-        0.9990482213453795,
-        -0.043619392781578746,
-        0.0,
-        0.0,
-        -1.7738349880671375e-06,
-        0.0,
-        0.0
-      ],
-      [
-        0.37546259507230645,
-        0.0,
-        0.35486504250502293,
-        1404.055030578364,
-        0.0,
-        2.3545644518243027,
-        26.793240093640463,
-        0.9990482206266864,
-        -0.04361940924235049,
-        0.0,
-        0.0,
-        -5.393574933341757e-06,
-        0.0,
-        0.0
-      ],
-      [
-        0.3876785915003212,
-        0.0,
-        0.38427777156749965,
-        1404.3890292510132,
-        0.0,
-        2.4608804992144298,
-        27.888942286312105,
-        0.999048217704222,
-        -0.043619476177680146,
-        0.0,
-        0.0,
-        -1.6542701486048738e-05,
-        0.0,
-        0.0
-      ],
-      [
-        0.39989458792833593,
-        0.0,
-        0.4149916472482399,
-        1404.7364408383792,
-        0.0,
-        2.567587891100365,
-        28.989199319159905,
-        0.9990482107313803,
-        -0.04361963588128692,
-        0.0,
-        0.0,
-        -3.57992193877067e-05,
-        0.0,
-        0.0
-      ],
-      [
-        0.4121105843563507,
-        0.0,
-        0.4470114515074697,
-        1405.0973210156242,
-        0.0,
-        2.6746868303322735,
-        30.09401658335066,
-        0.9990481974713662,
-        -0.043619939582457114,
-        0.0,
-        0.0,
-        -6.373769734865242e-05,
-        0.0,
-        0.0
-      ],
-      [
-        0.4714932108541475,
-        0.0,
-        0.6214649190560362,
-        1407.0457755922594,
-        0.0,
-        3.20089761848767,
-        35.52970739453049,
-        0.999047931418588,
-        -0.04362603242990979,
-        0.0,
-        0.0,
-        -0.0003466794997758881,
-        0.0,
-        0.0
-      ],
-      [
-        0.5078257800637102,
-        0.0,
-        0.7436900223076947,
-        1408.3980043498989,
-        0.0,
-        3.5272473434690474,
-        38.9064676002783,
-        0.9990475351362836,
-        -0.043635106200088966,
-        0.0,
-        0.0,
-        -0.0006527014387981647,
-        0.0,
-        0.0
-      ],
-      [
-        0.5343429255049618,
-        0.0,
-        0.8404008167096535,
-        1409.4626035766928,
-        0.0,
-        3.7669669547451026,
-        41.38869378551008,
-        0.999047071393082,
-        -0.04364572230978894,
-        0.0,
-        0.0,
-        -0.0009500037093516896,
-        0.0,
-        0.0
-      ],
-      [
-        0.5608600709462134,
-        0.0,
-        0.9434791168010719,
-        1410.59314670163,
-        0.0,
-        4.007499979256332,
-        43.88014742967599,
-        0.9990464157682694,
-        -0.04366072651425588,
-        0.0,
-        0.0,
-        -0.0013153711651834202,
-        0.0,
-        0.0
-      ],
-      [
-        0.587377216387465,
-        0.0,
-        1.052946734073096,
-        1411.789878217296,
-        0.0,
-        4.248867697898546,
-        46.38081337972843,
-        0.9990455274106426,
-        -0.04368104853969346,
-        0.0,
-        0.0,
-        -0.0017529600371037233,
-        0.0,
-        0.0
-      ],
-      [
-        0.6404115072699682,
-        0.0,
-        1.2911334159546823,
-        1414.3828008155635,
-        0.0,
-        4.7342163118641025,
-        51.409723549641654,
-        0.9990428918068072,
-        -0.04374128417421018,
-        0.0,
-        0.0,
-        -0.0028565001984919925,
-        0.0,
-        0.0
-      ],
-      [
-        0.6934457981524714,
-        0.0,
-        1.5551621654546728,
-        1417.2434413244466,
-        0.0,
-        5.223320101846325,
-        56.47528586504274,
-        0.9990387789404929,
-        -0.04383511429026375,
-        0.0,
-        0.0,
-        -0.0042807239320248975,
-        0.0,
-        0.0
-      ],
-      [
-        0.7464800890349746,
-        0.0,
-        1.8452390782392452,
-        1420.3736989934869,
-        0.0,
-        5.716591858377115,
-        61.577353761629105,
-        0.9990328108945598,
-        -0.04397091074901064,
-        0.0,
-        0.0,
-        -0.006025215840091671,
-        0.0,
-        0.0
-      ],
-      [
-        0.7995143799174779,
-        0.0,
-        2.1615985869881893,
-        1423.7755053235082,
-        0.0,
-        6.214568171247433,
-        66.7157496449745,
-        0.9990246062084749,
-        -0.044156916668481455,
-        0.0,
-        0.0,
-        -0.008067579121576691,
-        0.0,
-        0.0
-      ],
-      [
-        0.8131556786423583,
-        0.0,
-        2.247252732662679,
-        1424.6946494219703,
-        0.0,
-        6.343494187294683,
-        68.04328136676263,
-        0.9990220892059272,
-        -0.04421382432096814,
-        0.0,
-        0.0,
-        -0.008635905376528539,
-        0.0,
-        0.0
-      ],
-      [
-        0.8267969773672387,
-        0.0,
-        2.3346680941813798,
-        1425.6319190655508,
-        0.0,
-        6.47278731269883,
-        69.37320109881897,
-        0.9990193949783975,
-        -0.04427465773988175,
-        0.0,
-        0.0,
-        -0.009219597765487838,
-        0.0,
-        0.0
-      ],
-      [
-        0.8404382760921191,
-        0.0,
-        2.423849776131295,
-        1426.5873468087618,
-        0.0,
-        6.602460842986929,
-        70.70550583214698,
-        0.9990165184080826,
-        -0.04433951596651724,
-        0.0,
-        0.0,
-        -0.009817296613263051,
-        0.0,
-        0.0
-      ],
-      [
-        0.8773817713324279,
-        0.0,
-        2.674292357248716,
-        1429.266324912806,
-        0.0,
-        6.955683895492831,
-        74.32560627995193,
-        0.9990077712790161,
-        -0.04453612676001403,
-        0.0,
-        0.0,
-        -0.011491569163109703,
-        0.0,
-        0.0
-      ],
-      [
-        0.9143252665727367,
-        0.0,
-        2.9378429158282167,
-        1432.079363401692,
-        0.0,
-        7.312086471803334,
-        77.96309636804313,
-        0.9989975783748202,
-        -0.044764141350970205,
-        0.0,
-        0.0,
-        -0.013221334208544593,
-        0.0,
-        0.0
-      ],
-      [
-        0.9512687618130455,
-        0.0,
-        3.214624601763796,
-        1435.027103285753,
-        0.0,
-        7.67197243416871,
-        81.61789937163779,
-        0.9989858902058498,
-        -0.045024180453267025,
-        0.0,
-        0.0,
-        -0.01496316000252246,
-        0.0,
-        0.0
-      ],
-      [
-        0.9671044469204755,
-        0.0,
-        3.337345956522805,
-        1436.3320247014133,
-        0.0,
-        7.827371193167061,
-        83.18979997214291,
-        0.9989804166506927,
-        -0.04514545846825244,
-        0.0,
-        0.0,
-        -0.015702664522955503,
-        0.0,
-        0.0
-      ],
-      [
-        0.9987682629763311,
-        0.0,
-        3.590156854306422,
-        1439.016091295169,
-        0.0,
-        8.140326920214763,
-        86.34230543892173,
-        0.9989686497214643,
-        -0.04540500859217487,
-        0.0,
-        0.0,
-        -0.01713500947204385,
-        0.0,
-        0.0
-      ],
-      [
-        1.0182059593067265,
-        0.0,
-        3.7502707932348063,
-        1440.7132442162065,
-        0.0,
-        8.333686340684435,
-        88.28085395513178,
-        0.9989608901362945,
-        -0.04557537520525769,
-        0.0,
-        0.0,
-        -0.017976255362536414,
-        0.0,
-        0.0
-      ],
-      [
-        1.037643655637122,
-        0.0,
-        3.914150192491601,
-        1442.4480732645945,
-        0.0,
-        8.52786907478255,
-        90.21990477962211,
-        0.9989527374706514,
-        -0.04575369076488988,
-        0.0,
-        0.0,
-        -0.018776004764849426,
-        0.0,
-        0.0
-      ],
-      [
-        1.0570813519675175,
-        0.0,
-        4.0818117604388595,
-        1444.220588808905,
-        0.0,
-        8.722877928047206,
-        92.15900700488999,
-        0.9989442084529002,
-        -0.04593949763553704,
-        0.0,
-        0.0,
-        -0.01952421359835275,
-        0.0,
-        0.0
-      ],
-      [
-        1.0878522163238507,
-        0.0,
-        4.355011666108014,
-        1447.10362522678,
-        0.0,
-        9.033356518348159,
-        95.22837921599097,
-        0.9989300066506203,
-        -0.04624718653424806,
-        0.0,
-        0.0,
-        -0.020573343222457626,
-        0.0,
-        0.0
-      ],
-      [
-        1.1186230806801838,
-        0.0,
-        4.637803337928455,
-        1450.081098025281,
-        0.0,
-        9.34609933493443,
-        98.29723838067788,
-        0.9989150380770344,
-        -0.04656928338901884,
-        0.0,
-        0.0,
-        -0.021426664903848175,
-        0.0,
-        0.0
-      ],
-      [
-        1.1439344065815038,
-        0.0,
-        4.877654857288581,
-        1452.6010701586633,
-        0.0,
-        9.605120382134444,
-        100.82113256260402,
-        0.998902239061606,
-        -0.04684296165447254,
-        0.0,
-        0.0,
-        -0.021957630686097258,
-        0.0,
-        0.0
-      ],
-      [
-        1.1692457324828238,
-        0.0,
-        5.1240832184794165,
-        1455.1849186220995,
-        0.0,
-        9.865799736162822,
-        103.34452659412645,
-        0.998889104553732,
-        -0.047122170817246976,
-        0.0,
-        0.0,
-        -0.022310015531181913,
-        0.0,
-        0.0
-      ],
-      [
-        1.1945570583841438,
-        0.0,
-        5.377131230245379,
-        1457.832630145446,
-        0.0,
-        10.128178040148592,
-        105.86736429615036,
-        0.9988757430448661,
-        -0.04740452756626242,
-        0.0,
-        0.0,
-        -0.022464481942505412,
-        0.0,
-        0.0
-      ],
-      [
-        1.2316667865519533,
-        0.0,
-        5.760173742937421,
-        1461.8299515425583,
-        0.0,
-        10.515968065521893,
-        109.56507811882982,
-        0.9988559535904542,
-        -0.04781971945209467,
-        0.0,
-        0.0,
-        -0.02230503541869596,
-        0.0,
-        0.0
-      ],
-      [
-        1.2687765147197627,
-        0.0,
-        6.157665881011987,
-        1465.9644702336698,
-        0.0,
-        10.90747456019896,
-        113.2613291843263,
-        0.9988363317180861,
-        -0.04822792555873063,
-        0.0,
-        0.0,
-        -0.021647347754902353,
-        0.0,
-        0.0
-      ],
-      [
-        1.3058862428875722,
-        0.0,
-        6.569755388593467,
-        1470.2361256107497,
-        0.0,
-        11.302629237068189,
-        116.95594964837703,
-        0.9988173733109863,
-        -0.04861909019868261,
-        0.0,
-        0.0,
-        -0.020465460106938674,
-        0.0,
-        0.0
-      ],
-      [
-        1.3429959710553816,
-        0.0,
-        6.996575656881953,
-        1474.6448541662996,
-        0.0,
-        11.701249001685522,
-        120.64879440835661,
-        0.9987995751995946,
-        -0.04898346901674302,
-        0.0,
-        0.0,
-        -0.01876317826703974,
-        0.0,
-        0.0
-      ],
-      [
-        1.4022433435144068,
-        0.0,
-        7.70883619000121,
-        1481.967535068409,
-        0.0,
-        12.3440140622968,
-        126.5405876089019,
-        0.9987747330601924,
-        -0.04948767538307943,
-        0.0,
-        0.0,
-        -0.015082737011502412,
-        0.0,
-        0.0
-      ],
-      [
-        1.447124093183637,
-        0.0,
-        8.273845805597446,
-        1487.7468551365796,
-        0.0,
-        12.835280397775149,
-        131.00016358910807,
-        0.998759753942432,
-        -0.04978915685591166,
-        0.0,
-        0.0,
-        -0.0116493087160039,
-        0.0,
-        0.0
-      ],
-      [
-        1.4920048428528674,
-        0.0,
-        8.860966046818932,
-        1493.726252238865,
-        0.0,
-        13.329245910280838,
-        135.4564674228788,
-        0.9987487133591488,
-        -0.05001014319414955,
-        0.0,
-        0.0,
-        -0.007893445434575489,
-        0.0,
-        0.0
-      ],
-      [
-        1.5261259080406766,
-        0.0,
-        9.322185456168672,
-        1498.4058717724442,
-        0.0,
-        13.705561055993863,
-        138.83860543473062,
-        0.9987431718950027,
-        -0.050120664983856034,
-        0.0,
-        0.0,
-        -0.0049885202280127725,
-        0.0,
-        0.0
-      ],
-      [
-        1.5602469732284858,
-        0.0,
-        9.796243177957413,
-        1503.2007421694525,
-        0.0,
-        14.081568200358406,
-        142.21172745228748,
-        0.9987400763854914,
-        -0.05018227468233507,
-        0.0,
-        0.0,
-        -0.0021974871668302893,
-        0.0,
-        0.0
-      ],
-      [
-        1.594368038416295,
-        0.0,
-        10.283116932306699,
-        1508.1105359759122,
-        0.0,
-        14.456592761344266,
-        145.57418804247416,
-        0.9987392688915538,
-        -0.050198303035308214,
-        0.0,
-        0.0,
-        0.0003317126485002621,
-        0.0,
-        0.0
-      ],
-      [
-        1.6284891036041043,
-        0.0,
-        10.782763892108118,
-        1513.1348812614574,
-        0.0,
-        14.830114008442317,
-        148.92551039451914,
-        0.9987404638154602,
-        -0.05017448698154704,
-        0.0,
-        0.0,
-        0.002454710917021711,
-        0.0,
-        0.0
-      ],
-      [
-        1.6626101687919135,
-        0.0,
-        11.295125105763683,
-        1518.273392185645,
-        0.0,
-        15.201714459820293,
-        152.26561953534997,
-        0.998743255152495,
-        -0.050118867554933645,
-        0.0,
-        0.0,
-        0.004040165434202206,
-        0.0,
-        0.0
-      ],
-      [
-        1.6967312339797227,
-        0.0,
-        11.82012905665547,
-        1523.5256814237537,
-        0.0,
-        15.571069593310723,
-        155.5944768314527,
-        0.9987471333060043,
-        -0.05004151456156747,
-        0.0,
-        0.0,
-        0.004980478415976205,
-        0.0,
-        0.0
-      ],
-      [
-        1.730852299167532,
-        0.0,
-        12.3576951259733,
-        1528.8913614366054,
-        0.0,
-        15.937962446390506,
-        158.91198562095738,
-        0.9987515121290973,
-        -0.04995404817438654,
-        0.0,
-        0.0,
-        0.005202680553341506,
-        0.0,
-        0.0
-      ],
-      [
-        1.770204581699234,
-        0.0,
-        12.99316462846883,
-        1535.2199629651552,
-        0.0,
-        16.357919807734902,
-        162.7238336002919,
-        0.9987563713055726,
-        -0.04985681664907042,
-        0.0,
-        0.0,
-        0.004526885571980357,
-        0.0,
-        0.0
-      ],
-      [
-        1.809556864230936,
-        0.0,
-        13.64509707390926,
-        1541.6982641999439,
-        0.0,
-        16.77455445513705,
-        166.5201234706108,
-        0.9987601070397171,
-        -0.049781932382929946,
-        0.0,
-        0.0,
-        0.002893543282837415,
-        0.0,
-        0.0
-      ],
-      [
-        1.8489091467626382,
-        0.0,
-        14.313365992021957,
-        1548.325647083685,
-        0.0,
-        17.188238648782765,
-        170.3005344008008,
-        0.998761833014933,
-        -0.04974728405427577,
-        0.0,
-        0.0,
-        0.0004523288916546131,
-        0.0,
-        0.0
-      ],
-      [
-        1.8882614292943403,
-        0.0,
-        14.99786487154082,
-        1555.1014803304176,
-        0.0,
-        17.59957141921011,
-        174.0647372165385,
-        0.9987608615445737,
-        -0.049766759951881734,
-        0.0,
-        0.0,
-        -0.0025530873746485517,
-        0.0,
-        0.0
-      ],
-      [
-        1.9276137118260424,
-        0.0,
-        15.698515586445161,
-        1562.0251189361156,
-        0.0,
-        18.00931494984472,
-        177.8123756310601,
-        0.9987567866204029,
-        -0.049848444618062406,
-        0.0,
-        0.0,
-        -0.00580297198785145,
-        0.0,
-        0.0
-      ],
-      [
-        1.9669659943577444,
-        0.0,
-        16.415272501508866,
-        1569.0959027979477,
-        0.0,
-        18.418318725160688,
-        181.54303133434186,
-        0.9987495345946646,
-        -0.04999352082667133,
-        0.0,
-        0.0,
-        -0.008927975546191298,
-        0.0,
-        0.0
-      ],
-      [
-        2.0063182768894463,
-        0.0,
-        17.14812250766858,
-        1576.3131455086952,
-        0.0,
-        18.827376280286103,
-        185.25574659431803,
-        0.9987393903371593,
-        -0.05019578297559129,
-        0.0,
-        0.0,
-        -0.011548881759880862,
-        0.0,
-        0.0
-      ],
-      [
-        2.0456705594211484,
-        0.0,
-        17.897076371025893,
-        1583.6760710848816,
-        0.0,
-        19.236880335641782,
-        188.94671773429027,
-        0.9987269915657001,
-        -0.050441919915892884,
-        0.0,
-        0.0,
-        -0.013326241579559526,
-        0.0,
-        0.0
-      ],
-      [
-        2.0850228419528505,
-        0.0,
-        18.66215784370356,
-        1591.1837695702793,
-        0.0,
-        19.64705799776041,
-        192.6127182510675,
-        0.9987132791828477,
-        -0.05071275562686339,
-        0.0,
-        0.0,
-        -0.014011710916521324,
-        0.0,
-        0.0
-      ],
-      [
-        2.1243751244845526,
-        0.0,
-        19.44339671092235,
-        1598.8352315482628,
-        0.0,
-        20.058024115712353,
-        196.25248374639725,
-        0.9986993975893848,
-        -0.0509854633728112,
-        0.0,
-        0.0,
-        -0.013492495006804071,
-        0.0,
-        0.0
-      ],
-      [
-        2.1637274070162547,
-        0.0,
-        20.24082185182467,
-        1606.6294112428295,
-        0.0,
-        20.469653908668416,
-        199.8659267237908,
-        0.9986865497671803,
-        -0.0512365457264816,
-        0.0,
-        0.0,
-        -0.011820579158264595,
-        0.0,
-        0.0
-      ],
-      [
-        2.2030796895479567,
-        0.0,
-        21.05445078105643,
-        1614.5652652173883,
-        0.0,
-        20.881476397006963,
-        203.45308490105546,
-        0.9986758233161713,
-        -0.051445194066449054,
-        0.0,
-        0.0,
-        -0.009219773000993449,
-        0.0,
-        0.0
-      ],
-      [
-        2.242431972079659,
-        0.0,
-        21.884276667948427,
-        1622.6417557701968,
-        0.0,
-        21.292691516082606,
-        207.01376502118114,
-        0.9986680138404801,
-        -0.051596526577514616,
-        0.0,
-        0.0,
-        -0.006065665978341973,
-        0.0,
-        0.0
-      ],
-      [
-        2.281784254611361,
-        0.0,
-        22.73025710183893,
-        1630.8578392788652,
-        0.0,
-        21.702290707441925,
-        210.54765058753065,
-        0.9986634827313932,
-        -0.05168409673258039,
-        0.0,
-        0.0,
-        -0.0028320304931861804,
-        0.0,
-        0.0
-      ],
-      [
-        2.321136537143063,
-        0.0,
-        23.592307960728686,
-        1639.2124583875368,
-        0.0,
-        22.109202996997105,
-        214.05444567461944,
-        0.9986620718233559,
-        -0.05171131491378633,
-        0.0,
-        0.0,
-        -3.273425571649698e-05,
-        0.0,
-        0.0
-      ],
-      [
-        2.360488819674765,
-        0.0,
-        24.4703042187697,
-        1647.7045419903095,
-        0.0,
-        22.512469401440708,
-        217.53389705196565,
-        0.9986631058064981,
-        -0.051691340477111956,
-        0.0,
-        0.0,
-        0.0018700944269478108,
-        0.0,
-        0.0
-      ],
-      [
-        2.399841102206467,
-        0.0,
-        25.36408765473845,
-        1656.3330075827457,
-        0.0,
-        22.91140253311996,
-        220.98573051806142,
-        0.9986654952491582,
-        -0.05164518417683228,
-        0.0,
-        0.0,
-        0.00255883513831977,
-        0.0,
-        0.0
-      ],
-      [
-        2.4391933847381693,
-        0.0,
-        26.273480192776752,
-        1665.096761931744,
-        0.0,
-        23.305707008384537,
-        224.40964198113502,
-        0.998667925826281,
-        -0.051598193898097465,
-        0.0,
-        0.0,
-        0.0019274209870271419,
-        0.0,
-        0.0
-      ],
-      [
-        2.4785456672698714,
-        0.0,
-        27.19830073336192,
-        1673.9946991620945,
-        0.0,
-        23.695535797287437,
-        227.80525826444236,
-        0.9986691042787496,
-        -0.05157539416721706,
-        0.0,
-        0.0,
-        0.00012436705163391487,
-        0.0,
-        0.0
-      ],
-      [
-        2.5178979498015734,
-        0.0,
-        28.13838733370683,
-        1683.0257452083256,
-        0.0,
-        24.081714643011797,
-        231.1746561957025,
-        0.9986680067600973,
-        -0.05159662860580862,
-        0.0,
-        0.0,
-        -0.0024718068105831032,
-        0.0,
-        0.0
-      ],
-      [
-        2.5572502323332755,
-        0.0,
-        29.09362344642463,
-        1692.1889698379296,
-        0.0,
-        24.465756664806953,
-        234.52362120529875,
-        0.9986640810293045,
-        -0.051672530308457164,
-        0.0,
-        0.0,
-        -0.00531693872174898,
-        0.0,
-        0.0
-      ],
-      [
-        2.5966025148649776,
-        0.0,
-        30.063952120049766,
-        1701.4836401336029,
-        0.0,
-        24.84915248434547,
-        237.85654985070556,
-        0.9986573627065854,
-        -0.05180220165671629,
-        0.0,
-        0.0,
-        -0.007805417009762249,
-        0.0,
-        0.0
-      ],
-      [
-        2.6359547973966797,
-        0.0,
-        31.049369987825358,
-        1710.909156330543,
-        0.0,
-        25.23296426263888,
-        241.17463850926586,
-        0.9986484788233668,
-        -0.05197321693204819,
-        0.0,
-        0.0,
-        -0.009397837800144424,
-        0.0,
-        0.0
-      ],
-      [
-        2.675307079928382,
-        0.0,
-        32.04990822663071,
-        1720.464944942408,
-        0.0,
-        25.6177631300107,
-        244.47731129899154,
-        0.9986385272825781,
-        -0.05216415152559245,
-        0.0,
-        0.0,
-        -0.009746016504526424,
-        0.0,
-        0.0
-      ],
-      [
-        2.714659362460084,
-        0.0,
-        33.06561098683653,
-        1730.150398220811,
-        0.0,
-        26.003649985099475,
-        247.76388651688322,
-        0.9986288434499616,
-        -0.05234928582147456,
-        0.0,
-        0.0,
-        -0.008783433090684203,
-        0.0,
-        0.0
-      ],
-      [
-        2.7466638251883717,
-        0.0,
-        33.90287243133754,
-        1738.1225592668618,
-        0.0,
-        26.318055764413064,
-        250.42473577011674,
-        0.9986220731810911,
-        -0.05247830094902611,
-        0.0,
-        0.0,
-        -0.007187437095495988,
-        0.0,
-        0.0
-      ],
-      [
-        2.7786682879166595,
-        0.0,
-        34.75019970411189,
-        1746.1797078363152,
-        0.0,
-        26.632547076996076,
-        253.07484927791828,
-        0.9986168486119764,
-        -0.05257761582747137,
-        0.0,
-        0.0,
-        -0.005146981271142527,
-        0.0,
-        0.0
-      ],
-      [
-        2.8106727506449474,
-        0.0,
-        35.60758682276552,
-        1754.3214980115654,
-        0.0,
-        26.94658099640271,
-        255.71429238292208,
-        0.9986134107074275,
-        -0.05264284128375133,
-        0.0,
-        0.0,
-        -0.0030135508230046243,
-        0.0,
-        0.0
-      ],
-      [
-        2.842677213373235,
-        0.0,
-        36.4750099599815,
-        1762.5475898621028,
-        0.0,
-        27.259574732562506,
-        258.34307149465377,
-        0.9986116907648279,
-        -0.05267542239299437,
-        0.0,
-        0.0,
-        -0.001153711046846577,
-        0.0,
-        0.0
-      ],
-      [
-        2.874681676101523,
-        0.0,
-        37.35242735192166,
-        1770.857643821478,
-        0.0,
-        27.571009621049402,
-        260.96116017423657,
-        0.9986113222063013,
-        -0.05268238062616823,
-        0.0,
-        0.0,
-        0.00011732326069801812,
-        0.0,
-        0.0
-      ],
-      [
-        2.9108918137851214,
-        0.0,
-        38.35711735988464,
-        1780.360448954532,
-        0.0,
-        27.920653176875035,
-        263.90659611946404,
-        0.9986117863649917,
-        -0.05267356145291356,
-        0.0,
-        0.0,
-        0.0005970560954381496,
-        0.0,
-        0.0
-      ],
-      [
-        2.9402847513530936,
-        0.0,
-        39.18191432246929,
-        1788.152248581623,
-        0.0,
-        28.20116731455152,
-        266.27458246453295,
-        0.9986121593762882,
-        -0.05266647801579879,
-        0.0,
-        0.0,
-        0.00018029129689837797,
-        0.0,
-        0.0
-      ],
-      [
-        2.9637983886571173,
-        0.0,
-        39.84763516253437,
-        1794.43536764547,
-        0.0,
-        28.422788624438756,
-        268.1473781869871,
-        0.9986120552323046,
-        -0.05266844821953483,
-        0.0,
-        0.0,
-        -0.0006146532567768621,
-        0.0,
-        0.0
-      ],
-      [
-        2.987312025961141,
-        0.0,
-        40.518540197973344,
-        1800.7623091671182,
-        0.0,
-        28.641915991220845,
-        269.99950817895905,
-        0.9986113531625479,
-        -0.052681756426866184,
-        0.0,
-        0.0,
-        -0.0017104862276714262,
-        0.0,
-        0.0
-      ],
-      [
-        2.9914721939592726,
-        0.0,
-        40.63777553801789,
-        1801.8862298209801,
-        0.0,
-        28.680446012440466,
-        270.32510612112253,
-        0.9986111540167145,
-        -0.05268553116342238,
-        0.0,
-        0.0,
-        -0.001925115784721252,
-        0.0,
-        0.0
-      ],
-      [
-        2.995632361957404,
-        0.0,
-        40.75717097039915,
-        1803.011503236872,
-        0.0,
-        28.718907169922407,
-        270.6500788940555,
-        0.9986109309792179,
-        -0.052689758447889846,
-        0.0,
-        0.0,
-        -0.0021440255924353433,
-        0.0,
-        0.0
-      ],
-      [
-        2.9997925299555357,
-        0.0,
-        40.87672624787269,
-        1804.1381271272428,
-        0.0,
-        28.75730020359816,
-        270.9744241378443,
-        0.9986106837058365,
-        -0.05269444468690729,
-        0.0,
-        0.0,
-        -0.0023665175450890896,
-        0.0,
-        0.0
-      ],
-      [
-        3.0010806713261253,
-        0.0,
-        40.91378499127846,
-        1804.4873095050593,
-        0.0,
-        28.769158612461496,
-        271.0745775183646,
-        0.998610601020868,
-        -0.05269601160029666,
-        0.0,
-        0.0,
-        -0.0024362131705180858,
-        0.0,
-        0.0
-      ],
-      [
-        3.002368812696715,
-        0.0,
-        40.950858957605355,
-        1804.836620399556,
-        0.0,
-        28.78097635349201,
-        271.17434659891165,
-        0.9986105159602374,
-        -0.05269762348403632,
-        0.0,
-        0.0,
-        -0.0025061326023049927,
-        0.0,
-        0.0
-      ],
-      [
-        3.0049450954378942,
-        0.0,
-        41.025067363509834,
-        1805.535752294894,
-        0.0,
-        28.80444941788811,
-        271.3723475156538,
-        0.9986103362871565,
-        -0.052701028036139075,
-        0.0,
-        0.0,
-        -0.002646673685833968,
-        0.0,
-        0.0
-      ],
-      [
-        3.0075213781790735,
-        0.0,
-        41.09933582485917,
-        1806.2353903358498,
-        0.0,
-        28.82776030838126,
-        271.56881105195504,
-        0.9986101470254777,
-        -0.052704614034669486,
-        0.0,
-        0.0,
-        -0.002787729326864425,
-        0.0,
-        0.0
-      ],
-      [
-        3.031179520120233,
-        0.0,
-        41.78377230550809,
-        1812.6805220489682,
-        0.0,
-        29.035044087890125,
-        273.3080842842384,
-        0.998608014131392,
-        -0.05274500531287296,
-        0.0,
-        0.0,
-        -0.00405896785073447,
-        0.0,
-        0.0
-      ],
-      [
-        3.0548376620613924,
-        0.0,
-        42.472917811025646,
-        1819.1649259278818,
-        0.0,
-        29.22883883576853,
-        274.9176151697642,
-        0.9986051296291442,
-        -0.05279957743220043,
-        0.0,
-        0.0,
-        -0.005220077854973565,
-        0.0,
-        0.0
-      ],
-      [
-        3.078495804002552,
-        0.0,
-        43.16647887569915,
-        1825.6857596669554,
-        0.0,
-        29.409276771689665,
-        276.3973893392454,
-        0.9986015987981233,
-        -0.05286630063973148,
-        0.0,
-        0.0,
-        -0.006162842079324339,
-        0.0,
-        0.0
-      ],
-      [
-        3.1021539459437113,
-        0.0,
-        43.86414859597373,
-        1832.2400296499402,
-        0.0,
-        29.576458278736727,
-        277.74742924796317,
-        0.9985975818232088,
-        -0.05294210678949917,
-        0.0,
-        0.0,
-        -0.006801926889870563,
-        0.0,
-        0.0
-      ],
-      [
-        3.1205915242496687,
-        0.0,
-        44.41054000646799,
-        1837.3694622931337,
-        0.0,
-        29.69759121605164,
-        278.7096386548556,
-        0.9985942284999921,
-        -0.053005311192729145,
-        0.0,
-        0.0,
-        -0.007056659283646371,
-        0.0,
-        0.0
-      ],
-      [
-        3.139029102555626,
-        0.0,
-        44.95909551860565,
-        1842.5159534343009,
-        0.0,
-        29.810720419548527,
-        279.59312620415045,
-        0.9985908032916531,
-        -0.053069796104250014,
-        0.0,
-        0.0,
-        -0.007078736271224166,
-        0.0,
-        0.0
-      ],
-      [
-        3.1574666808615834,
-        0.0,
-        45.50966434829809,
-        1847.6780234844762,
-        0.0,
-        29.915834785153674,
-        280.39795174942566,
-        0.9985874168962743,
-        -0.05313347693606157,
-        0.0,
-        0.0,
-        -0.006872571250846134,
-        0.0,
-        0.0
-      ],
-      [
-        3.1943418374734978,
-        0.0,
-        46.616320036329775,
-        1858.0437995511102,
-        0.0,
-        30.1018905671153,
-        281.77191194031366,
-        0.9985811228175118,
-        -0.05325165791389248,
-        0.0,
-        0.0,
-        -0.0058677019190040884,
-        0.0,
-        0.0
-      ],
-      [
-        3.223214302746968,
-        0.0,
-        47.48727769808795,
-        1866.1922718378607,
-        0.0,
-        30.224867792525565,
-        282.6287251668251,
-        0.9985770137918635,
-        -0.05332867979169528,
-        0.0,
-        0.0,
-        -0.0046883696214505876,
-        0.0,
-        0.0
-      ],
-      [
-        3.252086768020438,
-        0.0,
-        48.361488465275336,
-        1874.362657687145,
-        0.0,
-        30.32762218083002,
-        283.29372584916877,
-        0.9985738542265141,
-        -0.053387827016016944,
-        0.0,
-        0.0,
-        -0.0033976640205684787,
-        0.0,
-        0.0
-      ],
-      [
-        3.2809592332939084,
-        0.0,
-        49.23836222291197,
-        1882.5493984934758,
-        0.0,
-        30.409891899120687,
-        283.7674350406456,
-        0.9985716564510426,
-        -0.053428922851569076,
-        0.0,
-        0.0,
-        -0.002220579716490404,
-        0.0,
-        0.0
-      ],
-      [
-        3.2861061530217075,
-        0.0,
-        49.39491138651146,
-        1884.0100904863145,
-        0.0,
-        30.422385696029924,
-        283.831832097,
-        0.9985713625495937,
-        -0.05343441554586549,
-        0.0,
-        0.0,
-        -0.002039473052368581,
-        0.0,
-        0.0
-      ],
-      [
-        3.2912530727495066,
-        0.0,
-        49.551522764091686,
-        1885.4710944348872,
-        0.0,
-        30.434219466170028,
-        283.89017193091837,
-        0.9985710931570718,
-        -0.05343944970327912,
-        0.0,
-        0.0,
-        -0.0018697647488163229,
-        0.0,
-        0.0
-      ],
-      [
-        3.2963999924773058,
-        0.0,
-        49.708193218347525,
-        1886.9323817762904,
-        0.0,
-        30.445392755457114,
-        283.9424578403962,
-        0.9985708463631775,
-        -0.05344406114076398,
-        0.0,
-        0.0,
-        -0.001712237664779583,
-        0.0,
-        0.0
-      ],
-      [
-        3.3042992470019175,
-        0.0,
-        49.94875075710854,
-        1889.1755769359404,
-        0.0,
-        30.46150019858496,
-        284.0132242208781,
-        0.9985705064534851,
-        -0.05345041187215944,
-        0.0,
-        0.0,
-        -0.001496098305471191,
-        0.0,
-        0.0
-      ],
-      [
-        3.312198501526529,
-        0.0,
-        50.18943242420754,
-        1891.4193033866097,
-        0.0,
-        30.476656577402213,
-        284.0754126064182,
-        0.9985702083249971,
-        -0.05345598135878872,
-        0.0,
-        0.0,
-        -0.001312519274279486,
-        0.0,
-        0.0
-      ],
-      [
-        3.320097756051141,
-        0.0,
-        50.43023051745923,
-        1893.6634916381706,
-        0.0,
-        30.490981144697372,
-        284.1301578043123,
-        0.9985699451269875,
-        -0.05346089779896065,
-        0.0,
-        0.0,
-        -0.0011632483874742406,
-        0.0,
-        0.0
-      ],
-      [
-        3.329990894740742,
-        0.0,
-        50.73196271000057,
-        1896.4746981901599,
-        0.0,
-        30.50780921919789,
-        284.18882357021397,
-        0.998569652344506,
-        -0.05346636634195024,
-        0.0,
-        0.0,
-        -0.0010268386677511785,
-        0.0,
-        0.0
-      ],
-      [
-        3.339884033430343,
-        0.0,
-        51.03385502170298,
-        1899.286428653306,
-        0.0,
-        30.523413526460942,
-        284.23662332566585,
-        0.9985693876568634,
-        -0.05347130962996856,
-        0.0,
-        0.0,
-        -0.0009475524084241031,
-        0.0,
-        0.0
-      ],
-      [
-        3.349777172119944,
-        0.0,
-        51.33589559531874,
-        1902.0985778261854,
-        0.0,
-        30.537801119073723,
-        284.27363496770624,
-        0.9985691362099062,
-        -0.053476005183755386,
-        0.0,
-        0.0,
-        -0.0009255321552886326,
-        0.0,
-        0.0
-      ],
-      [
-        3.3683253555356067,
-        0.0,
-        51.90252269694555,
-        1907.3715922604476,
-        0.0,
-        30.56151413225411,
-        284.3140857598378,
-        0.9985686344433573,
-        -0.05348537393866615,
-        0.0,
-        0.0,
-        -0.0010312060299510803,
-        0.0,
-        0.0
-      ],
-      [
-        3.3868735389512694,
-        0.0,
-        52.469546301363415,
-        1912.644971123603,
-        0.0,
-        30.580992386262512,
-        284.3168497648523,
-        0.9985680330918398,
-        -0.0534965997210957,
-        0.0,
-        0.0,
-        -0.0013124439543663804,
-        0.0,
-        0.0
-      ],
-      [
-        3.4020443640890705,
-        0.0,
-        52.933571821207536,
-        1916.9580038821866,
-        0.0,
-        30.59390118182579,
-        284.2921183726133,
-        0.9985674197724458,
-        -0.05350804635582599,
-        0.0,
-        0.0,
-        -0.0016554770133904038,
-        0.0,
-        0.0
-      ],
-      [
-        3.4113407650123997,
-        0.0,
-        53.21801454525397,
-        1919.6007630901895,
-        0.0,
-        30.600869718527125,
-        284.2686520077668,
-        0.9985669732935694,
-        -0.05351637773060937,
-        0.0,
-        0.0,
-        -0.0019096611905017953,
-        0.0,
-        0.0
-      ],
-      [
-        3.420637165935729,
-        0.0,
-        53.50252094489657,
-        1922.2432947727054,
-        0.0,
-        30.607354371585938,
-        284.24095965368673,
-        0.9985664612658489,
-        -0.05352593065012929,
-        0.0,
-        0.0,
-        -0.002189725451575528,
-        0.0,
-        0.0
-      ],
-      [
-        3.429933566859058,
-        0.0,
-        53.7870860683214,
-        1924.8855553247784,
-        0.0,
-        30.61340487174681,
-        284.2094492957178,
-        0.9985658775363297,
-        -0.053536819207201124,
-        0.0,
-        0.0,
-        -0.0024897749176813404,
-        0.0,
-        0.0
-      ],
-      [
-        3.446308281894537,
-        0.0,
-        54.288447065764686,
-        1929.538841732897,
-        0.0,
-        30.623076665653123,
-        284.1450939651401,
-        0.998564661157342,
-        -0.05355950089170666,
-        0.0,
-        0.0,
-        -0.0030432941274008397,
-        0.0,
-        0.0
-      ],
-      [
-        3.4626829969300164,
-        0.0,
-        54.789955659748664,
-        1934.1909750940997,
-        0.0,
-        30.63151884887987,
-        284.0694832042064,
-        0.9985632009671663,
-        -0.053586715785421686,
-        0.0,
-        0.0,
-        -0.0036060375415251002,
-        0.0,
-        0.0
-      ],
-      [
-        3.4790577119654955,
-        0.0,
-        55.29159260836486,
-        1938.8417765512825,
-        0.0,
-        30.6387698866976,
-        283.98268275797926,
-        0.9985615002304228,
-        -0.053618396266374865,
-        0.0,
-        0.0,
-        -0.004148118586672922,
-        0.0,
-        0.0
-      ],
-      [
-        3.5098113349838638,
-        0.0,
-        56.233986388417584,
-        1947.5720966189886,
-        0.0,
-        30.649308119412588,
-        283.78956840999984,
-        0.9985577521171763,
-        -0.05368814068087966,
-        0.0,
-        0.0,
-        -0.004995753722875696,
-        0.0,
-        0.0
-      ],
-      [
-        3.534175816549051,
-        0.0,
-        56.98079291177778,
-        1954.4841235608465,
-        0.0,
-        30.65485317020661,
-        283.6087439160645,
-        0.9985543621019524,
-        -0.053751146612328486,
-        0.0,
-        0.0,
-        -0.005468216223805043,
-        0.0,
-        0.0
-      ],
-      [
-        3.558540298114238,
-        0.0,
-        57.727705931743166,
-        1961.3914508737146,
-        0.0,
-        30.657984939726493,
-        283.403403427446,
-        0.9985507401245225,
-        -0.05381838401606795,
-        0.0,
-        0.0,
-        -0.005712826327687022,
-        0.0,
-        0.0
-      ],
-      [
-        3.582904779679425,
-        0.0,
-        58.474666383862896,
-        1968.2934793625259,
-        0.0,
-        30.65872793609349,
-        283.17362539062856,
-        0.9985470329994949,
-        -0.053887118404208005,
-        0.0,
-        0.0,
-        -0.005715589734010285,
-        0.0,
-        0.0
-      ],
-      [
-        3.615075076269808,
-        0.0,
-        59.46093029300552,
-        1977.3978468110813,
-        0.0,
-        30.65604026938866,
-        282.8329036222532,
-        0.9985422079702719,
-        -0.05397646093613738,
-        0.0,
-        0.0,
-        -0.005370632581265702,
-        0.0,
-        0.0
-      ],
-      [
-        3.6472453728601906,
-        0.0,
-        60.4470502926392,
-        1986.490684430522,
-        0.0,
-        30.649124051484904,
-        282.4498923880041,
-        0.9985377778881324,
-        -0.054058370874473294,
-        0.0,
-        0.0,
-        -0.00470228124679458,
-        0.0,
-        0.0
-      ],
-      [
-        3.6794156694505733,
-        0.0,
-        61.43287580912756,
-        1995.5705078547826,
-        0.0,
-        30.637845153428913,
-        282.024806242408,
-        0.9985339970975394,
-        -0.0541281805383702,
-        0.0,
-        0.0,
-        -0.003859665028121607,
-        0.0,
-        0.0
-      ],
-      [
-        3.711585966040956,
-        0.0,
-        62.418262638319845,
-        2004.6359519751684,
-        0.0,
-        30.622025846871114,
-        281.5578484870658,
-        0.9985309543942363,
-        -0.054184291786092256,
-        0.0,
-        0.0,
-        -0.003027863149789076,
-        0.0,
-        0.0
-      ],
-      [
-        3.7510748617223286,
-        0.0,
-        63.62700350518156,
-        2015.742116701603,
-        0.0,
-        30.59615191343259,
-        280.92771073010533,
-        0.9985281259388035,
-        -0.05423638396229775,
-        0.0,
-        0.0,
-        -0.0022737968650352446,
-        0.0,
-        0.0
-      ],
-      [
-        3.790563757403701,
-        0.0,
-        64.83457870795098,
-        2026.8221426361588,
-        0.0,
-        30.562946617623467,
-        280.235144855664,
-        0.9985259122946742,
-        -0.05427709743407935,
-        0.0,
-        0.0,
-        -0.002025896531262317,
-        0.0,
-        0.0
-      ],
-      [
-        3.830052653085074,
-        0.0,
-        66.0406985721449,
-        2037.8736017601996,
-        0.0,
-        30.522339713717848,
-        279.4804874907335,
-        0.9985236841161251,
-        -0.0543180429121526,
-        0.0,
-        0.0,
-        -0.0023458498420220486,
-        0.0,
-        0.0
-      ],
-      [
-        3.862940498739986,
-        0.0,
-        67.04387979328413,
-        2047.0541169165751,
-        0.0,
-        30.482961090994824,
-        278.80481658505863,
-        0.9985213686108155,
-        -0.05436057891674121,
-        0.0,
-        0.0,
-        -0.0029537437668820657,
-        0.0,
-        0.0
-      ],
-      [
-        3.895828344394898,
-        0.0,
-        68.04568493009916,
-        2056.2117135218637,
-        0.0,
-        30.438709167856786,
-        278.08646659639095,
-        0.9985184097120064,
-        -0.05441490463478405,
-        0.0,
-        0.0,
-        -0.0036974567742780553,
-        0.0,
-        0.0
-      ],
-      [
-        3.901564462162616,
-        0.0,
-        68.22026143644148,
-        2057.806478439141,
-        0.0,
-        30.43052638348305,
-        277.9569725132137,
-        0.9985178226762002,
-        -0.054425676142779385,
-        0.0,
-        0.0,
-        -0.003824485824225585,
-        0.0,
-        0.0
-      ],
-      [
-        3.9073005799303346,
-        0.0,
-        68.39479091068353,
-        2059.400499683065,
-        0.0,
-        30.422310918020024,
-        277.8271771574123,
-        0.9985172159793615,
-        -0.05443680582374448,
-        0.0,
-        0.0,
-        -0.003948859235182757,
-        0.0,
-        0.0
-      ],
-      [
-        3.913036697698053,
-        0.0,
-        68.56927328376659,
-        2060.9937766018775,
-        0.0,
-        30.414093567844503,
-        277.69735921756467,
-        0.9985165900105697,
-        -0.05444828653892702,
-        0.0,
-        0.0,
-        -0.004070191521424559,
-        0.0,
-        0.0
-      ],
-      [
-        3.924489906398398,
-        0.0,
-        68.91751855335548,
-        2064.172820132817,
-        0.0,
-        30.397724158101703,
-        277.4384555457426,
-        0.9985152855358871,
-        -0.054472203413820974,
-        0.0,
-        0.0,
-        -0.004300077706736093,
-        0.0,
-        0.0
-      ],
-      [
-        3.935943115098743,
-        0.0,
-        69.2655767206294,
-        2067.348901205494,
-        0.0,
-        30.381408845361193,
-        277.1799525010546,
-        0.9985139123493065,
-        -0.054497368585046495,
-        0.0,
-        0.0,
-        -0.004510125037700422,
-        0.0,
-        0.0
-      ],
-      [
-        3.947396323799088,
-        0.0,
-        69.6134484265354,
-        2070.522024355623,
-        0.0,
-        30.365156553165782,
-        276.92188903883255,
-        0.9985124771162022,
-        -0.054523658363083115,
-        0.0,
-        0.0,
-        -0.0046959912843925694,
-        0.0,
-        0.0
-      ],
-      [
-        3.975516795322242,
-        0.0,
-        70.46677592241363,
-        2078.3003281675587,
-        0.0,
-        30.325557463297226,
-        276.2902070863928,
-        0.998508768803228,
-        -0.054591523115949524,
-        0.0,
-        0.0,
-        -0.005023603289539148,
-        0.0,
-        0.0
-      ],
-      [
-        4.003637266845396,
-        0.0,
-        71.31899702325327,
-        2086.060912134819,
-        0.0,
-        30.286401940988135,
-        275.6612398387155,
-        0.9985048894905985,
-        -0.054662427531694154,
-        0.0,
-        0.0,
-        -0.00515871090454635,
-        0.0,
-        0.0
-      ],
-      [
-        4.03175773836855,
-        0.0,
-        72.17012366978547,
-        2093.8038488264147,
-        0.0,
-        30.247694057267562,
-        275.03497042697654,
-        0.9985009787194042,
-        -0.05473381605057886,
-        0.0,
-        0.0,
-        -0.005102198044624734,
-        0.0,
-        0.0
-      ],
-      [
-        4.071718134752553,
-        0.0,
-        73.37774751321555,
-        2104.7766554844734,
-        0.0,
-        30.19342211631793,
-        274.14962024313644,
-        0.9984955763823219,
-        -0.054832290077171914,
-        0.0,
-        0.0,
-        -0.004736184542458373,
-        0.0,
-        0.0
-      ],
-      [
-        4.111678531136556,
-        0.0,
-        74.58321503119218,
-        2115.714173866902,
-        0.0,
-        30.13989956248964,
-        273.2696214556709,
-        0.9984906546348755,
-        -0.054921859407868936,
-        0.0,
-        0.0,
-        -0.004156218196720795,
-        0.0,
-        0.0
-      ],
-      [
-        4.151638927520558,
-        0.0,
-        75.78655560228103,
-        2126.616634570715,
-        0.0,
-        30.086953083697928,
-        272.39491531609764,
-        0.9984863884730574,
-        -0.054999378066501445,
-        0.0,
-        0.0,
-        -0.003537455673797176,
-        0.0,
-        0.0
-      ],
-      [
-        4.191599323904561,
-        0.0,
-        76.98778908947625,
-        2137.484250501196,
-        0.0,
-        30.03439955529517,
-        271.5254482719957,
-        0.998482734658111,
-        -0.05506567422845597,
-        0.0,
-        0.0,
-        -0.003055812142993621,
-        0.0,
-        0.0
-      ],
-      [
-        4.247720558129715,
-        0.0,
-        78.67129451835044,
-        2152.6885281818923,
-        0.0,
-        29.96100075926869,
-        270.31308741208943,
-        0.9984782334968972,
-        -0.0551472194268719,
-        0.0,
-        0.0,
-        -0.002840176191726927,
-        0.0,
-        0.0
-      ],
-      [
-        4.293788946145795,
-        0.0,
-        80.05016880492563,
-        2165.1186435966256,
-        0.0,
-        29.900989712028608,
-        269.32541317763133,
-        0.9984745340615917,
-        -0.05521414738274218,
-        0.0,
-        0.0,
-        -0.0031456528710022517,
-        0.0,
-        0.0
-      ],
-      [
-        4.3319865166419085,
-        0.0,
-        81.19136890109246,
-        2175.390662507597,
-        0.0,
-        29.851460636974075,
-        268.5115384720692,
-        0.9984710135884038,
-        -0.05527776948218839,
-        0.0,
-        0.0,
-        -0.0036382165404716294,
-        0.0,
-        0.0
-      ],
-      [
-        4.370184087138022,
-        0.0,
-        82.33068233577364,
-        2185.6316785061035,
-        0.0,
-        29.802282293126588,
-        267.702168146159,
-        0.9984668970925146,
-        -0.05535207578757475,
-        0.0,
-        0.0,
-        -0.0041901964897474555,
-        0.0,
-        0.0
-      ],
-      [
-        4.408381657634136,
-        0.0,
-        83.46812557773238,
-        2195.8418632233083,
-        0.0,
-        29.7536004154773,
-        266.8972285180937,
-        0.9984622067305288,
-        -0.05543662347552712,
-        0.0,
-        0.0,
-        -0.004649975722642913,
-        0.0,
-        0.0
-      ],
-      [
-        4.44657922813025,
-        0.0,
-        84.60372025886016,
-        2206.0213849908896,
-        0.0,
-        29.705525440166436,
-        266.0966508195001,
-        0.9984571122751965,
-        -0.0555283112402122,
-        0.0,
-        0.0,
-        -0.004906279396135334,
-        0.0,
-        0.0
-      ],
-      [
-        4.484776798626363,
-        0.0,
-        85.73749093457727,
-        2216.17040916179,
-        0.0,
-        29.658105851242716,
-        265.3003741836183,
-        0.9984518646517347,
-        -0.05562259675034331,
-        0.0,
-        0.0,
-        -0.004914202897301264,
-        0.0,
-        0.0
-      ],
-      [
-        4.527459427885128,
-        0.0,
-        87.00225863496392,
-        2227.4752264105914,
-        0.0,
-        29.605867232607107,
-        264.41562502847927,
-        0.9984461314049826,
-        -0.05572542185027556,
-        0.0,
-        0.0,
-        -0.004662601464381045,
-        0.0,
-        0.0
-      ],
-      [
-        4.570142057143892,
-        0.0,
-        88.26481176901635,
-        2238.742392270697,
-        0.0,
-        29.554315970621023,
-        263.5361181148114,
-        0.9984407992335227,
-        -0.05582087577531764,
-        0.0,
-        0.0,
-        -0.004244994562348959,
-        0.0,
-        0.0
-      ],
-      [
-        4.612824686402656,
-        0.0,
-        89.5251756458725,
-        2249.9721194672643,
-        0.0,
-        29.503241633926006,
-        262.66126294913374,
-        0.9984359855746087,
-        -0.05590689828242357,
-        0.0,
-        0.0,
-        -0.0038126242169389713,
-        0.0,
-        0.0
-      ],
-      [
-        4.655507315661421,
-        0.0,
-        90.78336571523603,
-        2261.1645893568134,
-        0.0,
-        29.4524079217932,
-        261.79022500167554,
-        0.9984316270371535,
-        -0.05598466663205397,
-        0.0,
-        0.0,
-        -0.003507242335690338,
-        0.0,
-        0.0
-      ],
-      [
-        4.698189944920185,
-        0.0,
-        92.0393888582706,
-        2272.3199546658616,
-        0.0,
-        29.401664175442736,
-        260.9225265227996,
-        0.9984275145660295,
-        -0.05605794400600384,
-        0.0,
-        0.0,
-        -0.0034183336261306534,
-        0.0,
-        0.0
-      ],
-      [
-        4.752240597633832,
-        0.0,
-        93.62683486374067,
-        2286.3933994013564,
-        0.0,
-        29.33748790536035,
-        259.82838082260946,
-        0.998422246912994,
-        -0.05615167219163866,
-        0.0,
-        0.0,
-        -0.0036321543491904377,
-        0.0,
-        0.0
-      ],
-      [
-        4.806291250347479,
-        0.0,
-        95.21081733745768,
-        2300.4078472193905,
-        0.0,
-        29.273510986737413,
-        258.739494575703,
-        0.9984164507039988,
-        -0.056254635190791984,
-        0.0,
-        0.0,
-        -0.00409156296018623,
-        0.0,
-        0.0
-      ],
-      [
-        4.8603419030611255,
-        0.0,
-        96.79135131898924,
-        2314.3635796067238,
-        0.0,
-        29.20995221632918,
-        257.6558995612587,
-        0.9984098835274474,
-        -0.056371076757855146,
-        0.0,
-        0.0,
-        -0.004574924559245082,
-        0.0,
-        0.0
-      ],
-      [
-        4.914392555774772,
-        0.0,
-        98.3684648761407,
-        2328.260881502707,
-        0.0,
-        29.147029293103394,
-        256.5775212135037,
-        0.9984026590386518,
-        -0.056498908167848576,
-        0.0,
-        0.0,
-        -0.004864211348077226,
-        0.0,
-        0.0
-      ],
-      [
-        4.968443208488419,
-        0.0,
-        99.94219631139251,
-        2342.1000345407706,
-        0.0,
-        29.08486061755326,
-        255.50425327143668,
-        0.998395172180383,
-        -0.056631087543143124,
-        0.0,
-        0.0,
-        -0.00484648719795974,
-        0.0,
-        0.0
-      ],
-      [
-        5.022493861202066,
-        0.0,
-        101.51258688769487,
-        2355.8813140839297,
-        0.0,
-        29.02341715599304,
-        254.43602112694464,
-        0.9983878956284385,
-        -0.05675925509062748,
-        0.0,
-        0.0,
-        -0.004560322059999794,
-        0.0,
-        0.0
-      ],
-      [
-        5.076544513915713,
-        0.0,
-        103.07967280118045,
-        2369.6049909103926,
-        0.0,
-        28.962543506067664,
-        253.37278818574364,
-        0.998381152031252,
-        -0.05687775436263652,
-        0.0,
-        0.0,
-        -0.004167863056276903,
-        0.0,
-        0.0
-      ],
-      [
-        5.13059516662936,
-        0.0,
-        104.64347999245769,
-        2383.271333875466,
-        0.0,
-        28.902036048253624,
-        252.31453252451252,
-        0.9983749712106429,
-        -0.05698611507748301,
-        0.0,
-        0.0,
-        -0.0038704917842357386,
-        0.0,
-        0.0
-      ],
-      [
-        5.1846458193430065,
-        0.0,
-        106.20402390096527,
-        2396.8806109439215,
-        0.0,
-        28.841738444285728,
-        251.26122511512602,
-        0.9983690938346899,
-        -0.057088941739978805,
-        0.0,
-        0.0,
-        -0.00381239949158311,
-        0.0,
-        0.0
-      ],
-      [
-        5.238696472056653,
-        0.0,
-        107.76131393292273,
-        2410.4330885376794,
-        0.0,
-        28.78160841138763,
-        250.21282073415537,
-        0.9983631093232962,
-        -0.057193455271100944,
-        0.0,
-        0.0,
-        -0.004018301283111284,
-        0.0,
-        0.0
-      ],
-      [
-        5.2927471247703,
-        0.0,
-        109.31536027310293,
-        2423.929030336411,
-        0.0,
-        28.721726860149552,
-        249.1692594394816,
-        0.9983566536978924,
-        -0.057306010938671284,
-        0.0,
-        0.0,
-        -0.004391205992201562,
-        0.0,
-        0.0
-      ],
-      [
-        5.342460668455986,
-        0.0,
-        110.74185862115297,
-        2436.292346994975,
-        0.0,
-        28.66700410699739,
-        248.21365302809866,
-        0.998350177502448,
-        -0.057418732321788686,
-        0.0,
-        0.0,
-        -0.004739444968215566,
-        0.0,
-        0.0
-      ],
-      [
-        5.392174212141671,
-        0.0,
-        112.16564752256866,
-        2448.60825624257,
-        0.0,
-        28.612739996883935,
-        247.2620357181529,
-        0.998343263162577,
-        -0.0575388540278691,
-        0.0,
-        0.0,
-        -0.004972725287693293,
-        0.0,
-        0.0
-      ],
-      [
-        5.441887755827357,
-        0.0,
-        113.5867512017418,
-        2460.8769553698435,
-        0.0,
-        28.55899857874629,
-        246.31436300162818,
-        0.9983361103721736,
-        -0.057662865616545676,
-        0.0,
-        0.0,
-        -0.005031169818438607,
-        0.0,
-        0.0
-      ],
-      [
-        5.491601299513042,
-        0.0,
-        115.00519572148357,
-        2473.098639632774,
-        0.0,
-        28.50578317427134,
-        245.37059778187185,
-        0.9983289664478046,
-        -0.05778646566579558,
-        0.0,
-        0.0,
-        -0.004917439530111228,
-        0.0,
-        0.0
-      ],
-      [
-        5.554603109165186,
-        0.0,
-        116.7990034912309,
-        2488.5198972921066,
-        0.0,
-        28.439004448324383,
-        244.18013526631336,
-        0.9983202277341187,
-        -0.0579372807086702,
-        0.0,
-        0.0,
-        -0.004622268841381971,
-        0.0,
-        0.0
-      ],
-      [
-        5.617604918817331,
-        0.0,
-        118.58862213981088,
-        2503.8663484199355,
-        0.0,
-        28.37280794060883,
-        242.99584759488067,
-        0.9983120075826133,
-        -0.0580787686606824,
-        0.0,
-        0.0,
-        -0.004316333090428528,
-        0.0,
-        0.0
-      ],
-      [
-        5.6677507107483684,
-        0.0,
-        120.01008335503963,
-        2516.0280265142765,
-        0.0,
-        28.32042311900198,
-        242.0576016621708,
-        0.9983057989307781,
-        -0.058185390911010416,
-        0.0,
-        0.0,
-        -0.004174163283189652,
-        0.0,
-        0.0
-      ],
-      [
-        5.717896502679406,
-        0.0,
-        121.42892345343826,
-        2528.1427522425024,
-        0.0,
-        28.26823723027721,
-        241.1232061517488,
-        0.9982996968294784,
-        -0.058289983792755254,
-        0.0,
-        0.0,
-        -0.004185719892611886,
-        0.0,
-        0.0
-      ],
-      [
-        5.768042294610444,
-        0.0,
-        122.84515218309751,
-        2540.2107177431503,
-        0.0,
-        28.216238672431995,
-        240.19262715489688,
-        0.9982934745925056,
-        -0.05839643423820464,
-        0.0,
-        0.0,
-        -0.004355290461839922,
-        0.0,
-        0.0
-      ],
-      [
-        5.818188086541482,
-        0.0,
-        124.2587795870999,
-        2552.2321134138024,
-        0.0,
-        28.16446587571816,
-        239.26582530070203,
-        0.9982869300156472,
-        -0.058508185057945444,
-        0.0,
-        0.0,
-        -0.0046308534552966674,
-        0.0,
-        0.0
-      ],
-      [
-        5.878315251829882,
-        0.0,
-        125.95037437690985,
-        2566.5852004054673,
-        0.0,
-        28.10279351046915,
-        238.15946485638608,
-        0.9982785247581992,
-        -0.05865139300230929,
-        0.0,
-        0.0,
-        -0.004976897569320067,
-        0.0,
-        0.0
-      ],
-      [
-        5.928299499698518,
-        0.0,
-        127.35379995603726,
-        2578.466521213646,
-        0.0,
-        28.05194365383829,
-        237.24377098675404,
-        0.9982710940344705,
-        -0.05877772131124777,
-        0.0,
-        0.0,
-        -0.005183277755887089,
-        0.0,
-        0.0
-      ],
-      [
-        5.978283747567154,
-        0.0,
-        128.75469430958427,
-        2590.302162464995,
-        0.0,
-        28.001537701570243,
-        236.33169589564417,
-        0.9982634204042914,
-        -0.058907912561409356,
-        0.0,
-        0.0,
-        -0.005254137081118654,
-        0.0,
-        0.0
-      ],
-      [
-        6.02826799543579,
-        0.0,
-        130.15307993407,
-        2602.0923041425817,
-        0.0,
-        27.951592110935735,
-        235.42320465833663,
-        0.9982557104780792,
-        -0.05903844760209214,
-        0.0,
-        0.0,
-        -0.005179897277211856,
-        0.0,
-        0.0
-      ],
-      [
-        6.078252243304426,
-        0.0,
-        131.54897933474706,
-        2613.8371246096426,
-        0.0,
-        27.90207796710327,
-        234.51826808297105,
-        0.9982481581355738,
-        -0.05916604499240896,
-        0.0,
-        0.0,
-        -0.004999186939709275,
-        0.0,
-        0.0
-      ],
-      [
-        6.14293081584079,
-        0.0,
-        133.35158618598618,
-        2628.9677000934257,
-        0.0,
-        27.83853912577902,
-        233.35253531819168,
-        0.9982387708849311,
-        -0.05932424547430219,
-        0.0,
-        0.0,
-        -0.004735721737768913,
-        0.0,
-        0.0
-      ],
-      [
-        6.196765840796611,
-        0.0,
-        134.84885801344308,
-        2641.504223499868,
-        0.0,
-        27.78601019372906,
-        232.38671188816173,
-        0.9982312948035983,
-        -0.05944991737736186,
-        0.0,
-        0.0,
-        -0.004582538204650631,
-        0.0,
-        0.0
-      ],
-      [
-        6.250600865752432,
-        0.0,
-        136.3433093559381,
-        2653.9888610238013,
-        0.0,
-        27.733733530640755,
-        231.42493890028695,
-        0.9982239766594486,
-        -0.05957266631020262,
-        0.0,
-        0.0,
-        -0.004544113030637548,
-        0.0,
-        0.0
-      ],
-      [
-        6.304435890708253,
-        0.0,
-        137.83495299499026,
-        2666.4218301063156,
-        0.0,
-        27.681682121630697,
-        230.46719774627712,
-        0.9982166138875903,
-        -0.059695902557030465,
-        0.0,
-        0.0,
-        -0.004637847374044672,
-        0.0,
-        0.0
-      ],
-      [
-        6.3582709156640735,
-        0.0,
-        139.3238014356297,
-        2678.803346805097,
-        0.0,
-        27.629874993038428,
-        229.51345404378165,
-        0.9982090113351275,
-        -0.05982288126914124,
-        0.0,
-        0.0,
-        -0.004835816550128684,
-        0.0,
-        0.0
-      ],
-      [
-        6.433461438883678,
-        0.0,
-        141.3986046370014,
-        2696.0107168194013,
-        0.0,
-        27.55807231912803,
-        228.18833004204748,
-        0.9981977874367012,
-        -0.06000985020438029,
-        0.0,
-        0.0,
-        -0.005183556239435412,
-        0.0,
-        0.0
-      ],
-      [
-        6.493499513622796,
-        0.0,
-        143.05143440267972,
-        2709.6791010211286,
-        0.0,
-        27.501346436206617,
-        227.13634462496736,
-        0.9981882588518153,
-        -0.06016813136897512,
-        0.0,
-        0.0,
-        -0.005417089147762267,
-        0.0,
-        0.0
-      ],
-      [
-        6.553537588361913,
-        0.0,
-        144.70087709024796,
-        2723.284491227253,
-        0.0,
-        27.44526774752648,
-        226.0899086824119,
-        0.9981783749486971,
-        -0.060331883151106575,
-        0.0,
-        0.0,
-        -0.005528887864184272,
-        0.0,
-        0.0
-      ],
-      [
-        6.613575663101031,
-        0.0,
-        146.34697236741061,
-        2736.8272196612443,
-        0.0,
-        27.389865542384364,
-        225.04899345610752,
-        0.9981683712307972,
-        -0.060497178112075216,
-        0.0,
-        0.0,
-        -0.00549850079049472,
-        0.0,
-        0.0
-      ],
-      [
-        6.6736137378401486,
-        0.0,
-        147.9897600415469,
-        2750.3076159090515,
-        0.0,
-        27.335106078613638,
-        224.01351267740574,
-        0.9981584819372439,
-        -0.060660145796649474,
-        0.0,
-        0.0,
-        -0.005356933382695135,
-        0.0,
-        0.0
-      ],
-      [
-        6.752474107792829,
-        0.0,
-        150.14260561260468,
-        2767.9200321154776,
-        0.0,
-        27.26402096254326,
-        222.66152361409848,
-        0.9981458703860059,
-        -0.06086733849916473,
-        0.0,
-        0.0,
-        -0.005121317129779869,
-        0.0,
-        0.0
-      ],
-      [
-        6.813959694855546,
-        0.0,
-        151.81725931932664,
-        2781.5782641564183,
-        0.0,
-        27.209157532931876,
-        221.61370610659068,
-        0.9981363672630177,
-        -0.06102298332852277,
-        0.0,
-        0.0,
-        -0.0049892608336965134,
-        0.0,
-        0.0
-      ],
-      [
-        6.875445281918263,
-        0.0,
-        153.4885528124732,
-        2795.1722381057166,
-        0.0,
-        27.154695712056274,
-        220.5713172294377,
-        0.998127000836895,
-        -0.06117598933230379,
-        0.0,
-        0.0,
-        -0.004973611972068742,
-        0.0,
-        0.0
-      ],
-      [
-        6.93693086898098,
-        0.0,
-        155.1565100949117,
-        2808.702285251021,
-        0.0,
-        27.100601267597533,
-        219.53428012793938,
-        0.9981175439767274,
-        -0.0613300719172782,
-        0.0,
-        0.0,
-        -0.005092232377407862,
-        0.0,
-        0.0
-      ],
-      [
-        6.998416456043697,
-        0.0,
-        156.82115412458208,
-        2822.168732116663,
-        0.0,
-        27.046893509415764,
-        218.50251765038257,
-        0.9981077634427499,
-        -0.06148901234101784,
-        0.0,
-        0.0,
-        -0.005313911019777182,
-        0.0,
-        0.0
-      ],
-      [
-        7.079711027784927,
-        0.0,
-        159.01705863336244,
-        2839.8766098918236,
-        0.0,
-        26.976588553138942,
-        217.14628886485963,
-        0.9980941228414415,
-        -0.06171000128696081,
-        0.0,
-        0.0,
-        -0.005642547622547798,
-        0.0,
-        0.0
-      ],
-      [
-        7.1413765714336215,
-        0.0,
-        160.678957773008,
-        2853.235489342244,
-        0.0,
-        26.92387355705781,
-        216.12345145740105,
-        0.9980832190055194,
-        -0.06188610126687522,
-        0.0,
-        0.0,
-        -0.00583470663277882,
-        0.0,
-        0.0
-      ],
-      [
-        7.203042115082316,
-        0.0,
-        162.3376238546593,
-        2866.531450630426,
-        0.0,
-        26.871753878206487,
-        215.10563719332708,
-        0.9980719995710475,
-        -0.06206678705300405,
-        0.0,
-        0.0,
-        -0.005913977644856363,
-        0.0,
-        0.0
-      ],
-      [
-        7.264707658731011,
-        0.0,
-        163.99309368584287,
-        2879.764800637844,
-        0.0,
-        26.82024276529141,
-        214.0927648580076,
-        0.9980606853043941,
-        -0.062248480055622536,
-        0.0,
-        0.0,
-        -0.005868007987383545,
-        0.0,
-        0.0
-      ],
-      [
-        7.326373202379705,
-        0.0,
-        165.64540401358602,
-        2892.935842146138,
-        0.0,
-        26.76930537480817,
-        213.08476596029257,
-        0.9980494957946697,
-        -0.0624276563963562,
-        0.0,
-        0.0,
-        -0.0057292578150310285,
-        0.0,
-        0.0
-      ],
-      [
-        7.4088916340702395,
-        0.0,
-        167.8515760818731,
-        2910.4638592579427,
-        0.0,
-        26.701913984018734,
-        211.74342768540592,
-        0.9980349318063163,
-        -0.06266009304276082,
-        0.0,
-        0.0,
-        -0.005500442477221689,
-        0.0,
-        0.0
-      ],
-      [
-        7.471438984396619,
-        0.0,
-        169.5201242387313,
-        2923.6762037496537,
-        0.0,
-        26.65132451159183,
-        210.73237444992333,
-        0.9980242265088137,
-        -0.06283037818049024,
-        0.0,
-        0.0,
-        -0.005376810312423552,
-        0.0,
-        0.0
-      ],
-      [
-        7.533986334722999,
-        0.0,
-        171.18551943259396,
-        2936.8254605431066,
-        0.0,
-        26.60107136245458,
-        209.72612974607924,
-        0.9980136277303382,
-        -0.06299850325270505,
-        0.0,
-        0.0,
-        -0.005379768324332341,
-        0.0,
-        0.0
-      ],
-      [
-        7.596533685049379,
-        0.0,
-        172.8477817911696,
-        2949.911928330695,
-        0.0,
-        26.551114702482472,
-        208.72463430914146,
-        0.998002849020961,
-        -0.06316901005006623,
-        0.0,
-        0.0,
-        -0.005558224437490656,
-        0.0,
-        0.0
-      ],
-      [
-        7.659081035375759,
-        0.0,
-        174.5069306135082,
-        2962.9359016879234,
-        0.0,
-        26.501477931960515,
-        207.7278173465169,
-        0.997991569574525,
-        -0.06334692768305224,
-        0.0,
-        0.0,
-        -0.005894273438862186,
-        0.0,
-        0.0
-      ],
-      [
-        7.748666795076123,
-        0.0,
-        176.8779313527676,
-        2981.4816887220127,
-        0.0,
-        26.43114033337334,
-        206.3080802727079,
-        0.9979741282376106,
-        -0.06362099544314148,
-        0.0,
-        0.0,
-        -0.006444370337485663,
-        0.0,
-        0.0
-      ],
-      [
-        7.759103537845691,
-        0.0,
-        177.1537440729102,
-        2983.634013184773,
-        0.0,
-        26.42302807690898,
-        206.14328222521192,
-        0.9979719849536594,
-        -0.06365460208279741,
-        0.0,
-        0.0,
-        -0.006472273764772813,
-        0.0,
-        0.0
-      ],
-      [
-        7.769540280615259,
-        0.0,
-        177.42947225789044,
-        2985.7846185045005,
-        0.0,
-        26.4149384042443,
-        205.97860804618915,
-        0.9979698339098172,
-        -0.06368831551307658,
-        0.0,
-        0.0,
-        -0.006483922780854665,
-        0.0,
-        0.0
-      ],
-      [
-        7.779977023384827,
-        0.0,
-        177.70511611032092,
-        2987.9335058651936,
-        0.0,
-        26.406867759468906,
-        205.814057949079,
-        0.9979676788304743,
-        -0.06372207525022448,
-        0.0,
-        0.0,
-        -0.0064870216041659,
-        0.0,
-        0.0
-      ],
-      [
-        7.800850508923962,
-        0.0,
-        178.25615180978411,
-        2992.2261334581503,
-        0.0,
-        26.390778361221194,
-        205.4853292797425,
-        0.9979633681996031,
-        -0.06378954860621247,
-        0.0,
-        0.0,
-        -0.006478184887608469,
-        0.0,
-        0.0
-      ],
-      [
-        7.821723994463097,
-        0.0,
-        178.80685244936916,
-        2996.511905088895,
-        0.0,
-        26.37475703872127,
-        205.1570947080234,
-        0.9979590655123556,
-        -0.06385682684569678,
-        0.0,
-        0.0,
-        -0.006450103667181232,
-        0.0,
-        0.0
-      ],
-      [
-        7.842597480002232,
-        0.0,
-        179.35721936381304,
-        3000.790830645322,
-        0.0,
-        26.35880101776692,
-        204.8293521104278,
-        0.997954782075569,
-        -0.06392373379982567,
-        0.0,
-        0.0,
-        -0.006406026469359182,
-        0.0,
-        0.0
-      ],
-      [
-        7.900172892552435,
-        0.0,
-        180.87357831415673,
-        3012.557999837474,
-        0.0,
-        26.315102764411083,
-        203.92787055732535,
-        0.9979431257603775,
-        -0.06410545342118619,
-        0.0,
-        0.0,
-        -0.006224957977488508,
-        0.0,
-        0.0
-      ],
-      [
-        7.957748305102638,
-        0.0,
-        182.38743171824134,
-        3024.273363677032,
-        0.0,
-        26.271807339259322,
-        203.03007662560273,
-        0.9979317901463286,
-        -0.06428168012464469,
-        0.0,
-        0.0,
-        -0.006011081619319086,
-        0.0,
-        0.0
-      ],
-      [
-        8.01532371765284,
-        0.0,
-        183.89880196973834,
-        3035.937142517595,
-        0.0,
-        26.228837499750075,
-        202.13593401725984,
-        0.9979207913549607,
-        -0.06445220520316712,
-        0.0,
-        0.0,
-        -0.005834223368414232,
-        0.0,
-        0.0
-      ],
-      [
-        8.072899130203044,
-        0.0,
-        185.40770634890896,
-        3047.5495468828067,
-        0.0,
-        26.186129396464644,
-        201.24540648286762,
-        0.9979100210836219,
-        -0.06461874243154113,
-        0.0,
-        0.0,
-        -0.005747605805156722,
-        0.0,
-        0.0
-      ],
-      [
-        8.14886572486838,
-        0.0,
-        187.39484720670777,
-        3062.793013870621,
-        0.0,
-        26.13011721971151,
-        200.07588073379003,
-        0.9978958417383277,
-        -0.06483732261066139,
-        0.0,
-        0.0,
-        -0.005813589501516546,
-        0.0,
-        0.0
-      ],
-      [
-        8.224832319533714,
-        0.0,
-        189.377749455373,
-        3077.947871582541,
-        0.0,
-        26.07449071244671,
-        198.9124764633995,
-        0.9978812664421551,
-        -0.06506123321690438,
-        0.0,
-        0.0,
-        -0.006064013055359917,
-        0.0,
-        0.0
-      ],
-      [
-        8.30079891419905,
-        0.0,
-        191.356443737632,
-        3093.014577959884,
-        0.0,
-        26.01933609315093,
-        197.75508709615454,
-        0.9978659069048831,
-        -0.06529638073612634,
-        0.0,
-        0.0,
-        -0.00640190492509025,
-        0.0,
-        0.0
-      ],
-      [
-        8.376765508864384,
-        0.0,
-        193.33096927605467,
-        3107.993584707646,
-        0.0,
-        25.964778772942097,
-        196.6035994102232,
-        0.9978496553628828,
-        -0.0655442976738878,
-        0.0,
-        0.0,
-        -0.00670147639595367,
-        0.0,
-        0.0
-      ],
-      [
-        8.45273210352972,
-        0.0,
-        195.3013753535635,
-        3122.8853368135483,
-        0.0,
-        25.91092404984787,
-        195.45790671854974,
-        0.9978327188399141,
-        -0.0658016919167069,
-        0.0,
-        0.0,
-        -0.0068631026537037555,
-        0.0,
-        0.0
-      ],
-      [
-        8.5564809550127,
-        0.0,
-        197.9858357398332,
-        3143.083087041561,
-        0.0,
-        25.838557516823336,
-        193.9023851723417,
-        0.9978091534430762,
-        -0.06615816325043403,
-        0.0,
-        0.0,
-        -0.006813057714005237,
-        0.0,
-        0.0
-      ],
-      [
-        8.632458997358304,
-        0.0,
-        199.94701047341445,
-        3157.7723508197896,
-        0.0,
-        25.78637616265421,
-        192.76982125250095,
-        0.9977921568278338,
-        -0.06641402833558707,
-        0.0,
-        0.0,
-        -0.006627525565734848,
-        0.0,
-        0.0
-      ],
-      [
-        8.708437039703908,
-        0.0,
-        201.90424299035294,
-        3172.375773741868,
-        0.0,
-        25.7347428959417,
-        191.6427382953118,
-        0.997775611871073,
-        -0.0666621151020876,
-        0.0,
-        0.0,
-        -0.006443437084835758,
-        0.0,
-        0.0
-      ],
-      [
-        8.784415082049511,
-        0.0,
-        203.85757093615905,
-        3186.893768856777,
-        0.0,
-        25.683522001921943,
-        190.52106774384242,
-        0.9977594064974166,
-        -0.06690418582752408,
-        0.0,
-        0.0,
-        -0.0063771366005671145,
-        0.0,
-        0.0
-      ],
-      [
-        8.860393124395115,
-        0.0,
-        205.8070219905232,
-        3201.32674452569,
-        0.0,
-        25.632637069930755,
-        189.4047377333392,
-        0.9977431477678661,
-        -0.06714615805851161,
-        0.0,
-        0.0,
-        -0.0064835434480642615,
-        0.0,
-        0.0
-      ],
-      [
-        8.936371166740718,
-        0.0,
-        207.75261993049537,
-        3215.6751039080045,
-        0.0,
-        25.582096628139062,
-        188.2936697900063,
-        0.9977263590109392,
-        -0.06739512121956352,
-        0.0,
-        0.0,
-        -0.006737579425247886,
-        0.0,
-        0.0
-      ],
-      [
-        9.012349209086322,
-        0.0,
-        209.6943924769505,
-        3229.9392436126695,
-        0.0,
-        25.53198589033301,
-        187.18777347779084,
-        0.9977087243561766,
-        -0.06765568082653453,
-        0.0,
-        0.0,
-        -0.0070469795480642625,
-        0.0,
-        0.0
-      ],
-      [
-        9.088327251431926,
-        0.0,
-        211.63237597737697,
-        3244.1195532496986,
-        0.0,
-        25.482421566437253,
-        186.0869543990623,
-        0.9976902225845277,
-        -0.06792802606530969,
-        0.0,
-        0.0,
-        -0.007297227778974831,
-        0.0,
-        0.0
-      ],
-      [
-        9.16430529377753,
-        0.0,
-        213.56661564465892,
-        3258.216415312142,
-        0.0,
-        25.433489766509403,
-        184.99112658756476,
-        0.9976711180789813,
-        -0.06820813794225544,
-        0.0,
-        0.0,
-        -0.007409041428338158,
-        0.0,
-        0.0
-      ],
-      [
-        9.255988954542772,
-        0.0,
-        215.8957728848817,
-        3275.1167061729484,
-        0.0,
-        25.37529592653798,
-        183.6753153885527,
-        0.9976478267827824,
-        -0.0685481031447931,
-        0.0,
-        0.0,
-        -0.007353866447420653,
-        0.0,
-        0.0
-      ],
-      [
-        9.329184490076974,
-        0.0,
-        217.75144857626137,
-        3288.522632400925,
-        0.0,
-        25.329445413001217,
-        182.6299000761247,
-        0.9976294579051982,
-        -0.06881496718039845,
-        0.0,
-        0.0,
-        -0.00721953315935597,
-        0.0,
-        0.0
-      ],
-      [
-        9.402380025611176,
-        0.0,
-        219.60378599725033,
-        3301.8522015524295,
-        0.0,
-        25.2840286542239,
-        181.58892539722342,
-        0.9976113957907016,
-        -0.06907629431757421,
-        0.0,
-        0.0,
-        -0.0071000314969796585,
-        0.0,
-        0.0
-      ],
-      [
-        9.475575561145378,
-        0.0,
-        221.452813537769,
-        3315.1057367629883,
-        0.0,
-        25.238952902906366,
-        180.55234181908085,
-        0.9975935051841394,
-        -0.06933409630895566,
-        0.0,
-        0.0,
-        -0.007072736286166535,
-        0.0,
-        0.0
-      ],
-      [
-        9.54877109667958,
-        0.0,
-        223.29855362691876,
-        3328.2835575679496,
-        0.0,
-        25.194174467756824,
-        179.52009331477245,
-        0.9975754885914057,
-        -0.06959272192139712,
-        0.0,
-        0.0,
-        -0.007166170253344859,
-        0.0,
-        0.0
-      ],
-      [
-        9.621966632213782,
-        0.0,
-        225.14102682801635,
-        3341.3859793415477,
-        0.0,
-        25.149703332399497,
-        178.49211951599608,
-        0.9975570181018837,
-        -0.06985692101972527,
-        0.0,
-        0.0,
-        -0.007359380316685956,
-        0.0,
-        0.0
-      ],
-      [
-        9.69992497595067,
-        0.0,
-        227.09982395095844,
-        3355.2584016545306,
-        0.0,
-        25.10273378343719,
-        177.40188378878656,
-        0.9975366423045976,
-        -0.07014727836765486,
-        0.0,
-        0.0,
-        -0.007613202327595744,
-        0.0,
-        0.0
-      ],
-      [
-        9.77788331968756,
-        0.0,
-        229.05497729892178,
-        3369.0460138973003,
-        0.0,
-        25.05624273784438,
-        176.31634276522806,
-        0.9975154944965776,
-        -0.07044741396894877,
-        0.0,
-        0.0,
-        -0.007845680950735076,
-        0.0,
-        0.0
-      ],
-      [
-        9.855841663424448,
-        0.0,
-        231.00652629455954,
-        3382.7491794344737,
-        0.0,
-        25.01028319586619,
-        175.2354215175309,
-        0.9974936944582218,
-        -0.07075549212780677,
-        0.0,
-        0.0,
-        -0.00800580482106921,
-        0.0,
-        0.0
-      ],
-      [
-        9.933800007161336,
-        0.0,
-        232.95451322658172,
-        3396.3682552702985,
-        0.0,
-        24.964876447972223,
-        174.15903725774967,
-        0.9974714662911629,
-        -0.07106826057856876,
-        0.0,
-        0.0,
-        -0.008071756224598733,
-        0.0,
-        0.0
-      ],
-      [
-        10.011758350898225,
-        0.0,
-        234.8989806027287,
-        3409.9035908399037,
-        0.0,
-        24.92000466213385,
-        173.08708217588227,
-        0.9974490576332969,
-        -0.07138219302078028,
-        0.0,
-        0.0,
-        -0.008053698698096304,
-        0.0,
-        0.0
-      ],
-      [
-        10.089716694635113,
-        0.0,
-        236.83996887626645,
-        3423.3555288223465,
-        0.0,
-        24.875620923915918,
-        172.01947568914687,
-        0.9974266592549352,
-        -0.07169454876763183,
-        0.0,
-        0.0,
-        -0.00799030104117494,
-        0.0,
-        0.0
-      ],
-      [
-        10.167675038372002,
-        0.0,
-        238.77751396910904,
-        3436.7244059511886,
-        0.0,
-        24.831665010737556,
-        170.95615822141193,
-        0.9974043365719842,
-        -0.07200445418964861,
-        0.0,
-        0.0,
-        -0.007932225904560313,
-        0.0,
-        0.0
-      ],
-      [
-        10.260259956542143,
-        0.0,
-        241.0741594955194,
-        3452.4942064180113,
-        0.0,
-        24.77993244538779,
-        169.6988089847234,
-        0.9973777695190025,
-        -0.0723715316387116,
-        0.0,
-        0.0,
-        -0.007933962859896703,
-        0.0,
-        0.0
-      ],
-      [
-        10.331983881553601,
-        0.0,
-        242.85005254150943,
-        3464.6309411786283,
-        0.0,
-        24.74018797811798,
-        168.72879868008786,
-        0.9973570101978577,
-        -0.07265705501571923,
-        0.0,
-        0.0,
-        -0.007999534254435088,
-        0.0,
-        0.0
-      ],
-      [
-        10.403707806565059,
-        0.0,
-        244.62310553621592,
-        3476.6982310475187,
-        0.0,
-        24.700726758292653,
-        167.76226706312096,
-        0.9973359291209317,
-        -0.07294584505751081,
-        0.0,
-        0.0,
-        -0.008120392840873718,
-        0.0,
-        0.0
-      ],
-      [
-        10.475431731576517,
-        0.0,
-        246.3933390894872,
-        3488.696320945988,
-        0.0,
-        24.661556959667763,
-        166.79916646681974,
-        0.9973144047679198,
-        -0.07323951489811707,
-        0.0,
-        0.0,
-        -0.008283080782047614,
-        0.0,
-        0.0
-      ],
-      [
-        10.570210949134573,
-        0.0,
-        248.7283097077028,
-        3504.4453212173707,
-        0.0,
-        24.61026809150919,
-        165.5316856631647,
-        0.9972851716246207,
-        -0.0736364731285333,
-        0.0,
-        0.0,
-        -0.008533995654008303,
-        0.0,
-        0.0
-      ],
-      [
-        10.664990166692629,
-        0.0,
-        251.05844292221937,
-        3520.074421039511,
-        0.0,
-        24.55956073378059,
-        164.2700252540557,
-        0.9972549325714208,
-        -0.0740448524820111,
-        0.0,
-        0.0,
-        -0.008777585555819707,
-        0.0,
-        0.0
-      ],
-      [
-        10.759769384250685,
-        0.0,
-        253.38380018409714,
-        3535.5842188738256,
-        0.0,
-        24.509484757702907,
-        163.01407040877797,
-        0.9972237526767622,
-        -0.07446360160597872,
-        0.0,
-        0.0,
-        -0.008962120974518298,
-        0.0,
-        0.0
-      ],
-      [
-        10.854548601808741,
-        0.0,
-        255.70444274951228,
-        3550.9752572359675,
-        0.0,
-        24.460067420721284,
-        161.76372355124363,
-        0.9971918626741842,
-        -0.07488949073972735,
-        0.0,
-        0.0,
-        -0.009060301261257592,
-        0.0,
-        0.0
-      ],
-      [
-        10.949327819366797,
-        0.0,
-        258.02043196460846,
-        3566.2480578472178,
-        0.0,
-        24.411297670527187,
-        160.51889700079903,
-        0.9971595497261898,
-        -0.07531859826397448,
-        0.0,
-        0.0,
-        -0.009080200834106005,
-        0.0,
-        0.0
-      ],
-      [
-        11.044107036924853,
-        0.0,
-        260.3318269692551,
-        3581.4031352059314,
-        0.0,
-        24.363128650843404,
-        159.27950800120587,
-        0.9971270364662682,
-        -0.07574791327148246,
-        0.0,
-        0.0,
-        -0.009060397971120009,
-        0.0,
-        0.0
-      ],
-      [
-        11.138886254482909,
-        0.0,
-        262.6386820654586,
-        3596.440999128525,
-        0.0,
-        24.31549493058882,
-        158.04548085124225,
-        0.9970943895095551,
-        -0.076176521132415,
-        0.0,
-        0.0,
-        -0.009053950833906334,
-        0.0,
-        0.0
-      ],
-      [
-        11.223078569708694,
-        0.0,
-        264.6840966025861,
-        3609.7012834946004,
-        0.0,
-        24.27357274464674,
-        156.95372129467364,
-        0.9970651581496981,
-        -0.07655820805919103,
-        0.0,
-        0.0,
-        -0.009103673316092433,
-        0.0,
-        0.0
-      ],
-      [
-        11.307270884934479,
-        0.0,
-        266.7260001186744,
-        3622.8698615463104,
-        0.0,
-        24.231998847725862,
-        155.86606964450914,
-        0.9970355147264539,
-        -0.07694330198500701,
-        0.0,
-        0.0,
-        -0.009215532896876533,
-        0.0,
-        0.0
-      ],
-      [
-        11.391463200160263,
-        0.0,
-        268.764419529471,
-        3635.9470505027057,
-        0.0,
-        24.19077488143077,
-        154.78247402036607,
-        0.997005273306676,
-        -0.07733413955273855,
-        0.0,
-        0.0,
-        -0.009381515283990005,
-        0.0,
-        0.0
-      ],
-      [
-        11.526298565803183,
-        0.0,
-        272.02178591320984,
-        3656.700698909225,
-        0.0,
-        24.12551397331171,
-        153.05540295378862,
-        0.9969553004600582,
-        -0.07797558528331294,
-        0.0,
-        0.0,
-        -0.009719232535365411,
-        0.0,
-        0.0
-      ],
-      [
-        11.629928166907957,
-        0.0,
-        274.51933329593925,
-        3672.4932732795373,
-        0.0,
-        24.076030897839527,
-        151.73486733337154,
-        0.9969153860998186,
-        -0.07848414356580567,
-        0.0,
-        0.0,
-        -0.009993133704862501,
-        0.0,
-        0.0
-      ],
-      [
-        11.733557768012732,
-        0.0,
-        277.01178617635924,
-        3688.149306094081,
-        0.0,
-        24.02718830147244,
-        150.42013859022353,
-        0.9968741763892263,
-        -0.07900578721434508,
-        0.0,
-        0.0,
-        -0.01022270673001953,
-        0.0,
-        0.0
-      ],
-      [
-        11.837187369117506,
-        0.0,
-        279.49921249577267,
-        3703.6693998219466,
-        0.0,
-        23.97901615178758,
-        149.11111063335198,
-        0.9968318819485777,
-        -0.0795376911736781,
-        0.0,
-        0.0,
-        -0.010377234719292187,
-        0.0,
-        0.0
-      ],
-      [
-        11.940816970222281,
-        0.0,
-        281.9816810512481,
-        3719.0541364053593,
-        0.0,
-        23.93151087228138,
-        147.80768926356396,
-        0.9967887944864626,
-        -0.08007601244341027,
-        0.0,
-        0.0,
-        -0.010457234187587159,
-        0.0,
-        0.0
-      ],
-      [
-        12.064752353445058,
-        0.0,
-        284.9441620475395,
-        3737.2765068096355,
-        0.0,
-        23.875513492927038,
-        146.25610557829722,
-        0.9967365559402739,
-        -0.08072391992556825,
-        0.0,
-        0.0,
-        -0.010502372691281561,
-        0.0,
-        0.0
-      ],
-      [
-        12.188687736667836,
-        0.0,
-        287.899752185047,
-        3755.3070625566743,
-        0.0,
-        23.82031279061242,
-        144.71227132109868,
-        0.9966836089519098,
-        -0.08137518914709757,
-        0.0,
-        0.0,
-        -0.010564589657313663,
-        0.0,
-        0.0
-      ],
-      [
-        12.312623119890613,
-        0.0,
-        290.84854548315786,
-        3773.146755025479,
-        0.0,
-        23.765821685593817,
-        143.1760446016082,
-        0.9966297247946149,
-        -0.08203252414291481,
-        0.0,
-        0.0,
-        -0.010707279926641129,
-        0.0,
-        0.0
-      ],
-      [
-        12.43655850311339,
-        0.0,
-        293.7906278375796,
-        3790.796518341924,
-        0.0,
-        23.711997639908827,
-        141.6472815031503,
-        0.9965744493559818,
-        -0.08270127893087216,
-        0.0,
-        0.0,
-        -0.010950450421362582,
-        0.0,
-        0.0
-      ],
-      [
-        12.560493886336168,
-        0.0,
-        296.72608238596325,
-        3808.2572684530296,
-        0.0,
-        23.65884771295843,
-        140.1258330955576,
-        0.9965172975790761,
-        -0.08338701126221103,
-        0.0,
-        0.0,
-        -0.011272112808540227,
-        0.0,
-        0.0
-      ],
-      [
-        12.684429269558946,
-        0.0,
-        299.654995004633,
-        3825.5299025776776,
-        0.0,
-        23.60641653074431,
-        138.6115470632046,
-        0.9964579471005931,
-        -0.08409316248615047,
-        0.0,
-        0.0,
-        -0.011619905317940629,
-        0.0,
-        0.0
-      ],
-      [
-        12.808364652781723,
-        0.0,
-        302.57745752850144,
-        3842.6152992066854,
-        0.0,
-        23.55475903808502,
-        137.10427377237585,
-        0.9963963481992566,
-        -0.08481985262130683,
-        0.0,
-        0.0,
-        -0.011936304053707143,
-        0.0,
-        0.0
-      ],
-      [
-        12.831782867710663,
-        0.0,
-        303.12895481800746,
-        3845.822711175074,
-        0.0,
-        23.545089889137724,
-        136.82024211105002,
-        0.9963844600799091,
-        -0.08495938699829414,
-        0.0,
-        0.0,
-        -0.01198755452014847,
-        0.0,
-        0.0
-      ],
-      [
-        12.855201082639603,
-        0.0,
-        303.6802260727457,
-        3849.0234751875496,
-        0.0,
-        23.535450461396206,
-        136.53645438907287,
-        0.9963725022590866,
-        -0.08509950783970349,
-        0.0,
-        0.0,
-        -0.012035527058630051,
-        0.0,
-        0.0
-      ],
-      [
-        12.878619297568543,
-        0.0,
-        304.2312719522219,
-        3852.217596476033,
-        0.0,
-        23.525840612397523,
-        136.25290980416867,
-        0.9963604781786894,
-        -0.08524017148823657,
-        0.0,
-        0.0,
-        -0.012080328270711531,
-        0.0,
-        0.0
-      ],
-      [
-        12.925455727426423,
-        0.0,
-        305.3326912075897,
-        3858.585940494007,
-        0.0,
-        23.506708758228353,
-        135.68654561770146,
-        0.9963362467651894,
-        -0.08552293144801276,
-        0.0,
-        0.0,
-        -0.012161093399635297,
-        0.0,
-        0.0
-      ],
-      [
-        12.972292157284302,
-        0.0,
-        306.43321740718545,
-        3864.9277831459417,
-        0.0,
-        23.487692700913865,
-        135.12114369345989,
-        0.9963117843663685,
-        -0.08580743441364716,
-        0.0,
-        0.0,
-        -0.012231115292640028,
-        0.0,
-        0.0
-      ],
-      [
-        13.019128587142182,
-        0.0,
-        307.53285570137814,
-        3871.2431675892826,
-        0.0,
-        23.46879010262939,
-        134.55669781337699,
-        0.9962871082071281,
-        -0.08609346440842121,
-        0.0,
-        0.0,
-        -0.012292239598569918,
-        0.0,
-        0.0
-      ],
-      [
-        13.153906925069139,
-        0.0,
-        310.69230699819093,
-        3889.2693242283653,
-        0.0,
-        23.414999815951532,
-        132.93770151196384,
-        0.9962149813675026,
-        -0.086924098005218,
-        0.0,
-        0.0,
-        -0.01243989477579994,
-        0.0,
-        0.0
-      ],
-      [
-        13.288685262996095,
-        0.0,
-        313.8445600808358,
-        3907.077755228928,
-        0.0,
-        23.36204720864964,
-        131.3264189250319,
-        0.996141258168352,
-        -0.08776495025427285,
-        0.0,
-        0.0,
-        -0.012590548177286396,
-        0.0,
-        0.0
-      ],
-      [
-        13.423463600923052,
-        0.0,
-        316.98972841199895,
-        3924.669533148359,
-        0.0,
-        23.309856944669924,
-        129.72269258484454,
-        0.9960657719408764,
-        -0.08861756068043049,
-        0.0,
-        0.0,
-        -0.01279724257806111,
-        0.0,
-        0.0
-      ],
-      [
-        13.558241938850008,
-        0.0,
-        320.1279128779379,
-        3942.045673117182,
-        0.0,
-        23.258382691869354,
-        128.12637131435378,
-        0.9959880944695768,
-        -0.08948631395654257,
-        0.0,
-        0.0,
-        -0.013085551826585516,
-        0.0,
-        0.0
-      ],
-      [
-        13.693020276776965,
-        0.0,
-        323.2592089201435,
-        3959.2071592271927,
-        0.0,
-        23.207614014831634,
-        126.53730171717349,
-        0.9959077054632095,
-        -0.09037647491872726,
-        0.0,
-        0.0,
-        -0.013449184558118,
-        0.0,
-        0.0
-      ],
-      [
-        13.827798614703921,
-        0.0,
-        326.38371244585244,
-        3976.1549548633375,
-        0.0,
-        23.157573275839823,
-        124.95532877586852,
-        0.9958241753392371,
-        -0.09129212777275499,
-        0.0,
-        0.0,
-        -0.01385474458676984,
-        0.0,
-        0.0
-      ],
-      [
-        13.962576952630878,
-        0.0,
-        329.50152343254115,
-        3992.8900044708917,
-        0.0,
-        23.10829834310635,
-        123.38029733949564,
-        0.9957372945968622,
-        -0.09223482137453592,
-        0.0,
-        0.0,
-        -0.014257875198952226,
-        0.0,
-        0.0
-      ],
-      [
-        14.097355290557834,
-        0.0,
-        332.61274669046907,
-        4009.4132331015307,
-        0.0,
-        23.059820874071384,
-        121.81205633829558,
-        0.9956471003223999,
-        -0.09320338126137832,
-        0.0,
-        0.0,
-        -0.014622387945174996,
-        0.0,
-        0.0
-      ],
-      [
-        14.23213362848479,
-        0.0,
-        335.7174900033405,
-        4025.725546380347,
-        0.0,
-        23.012149548287105,
-        120.25046255370434,
-        0.9955537985078642,
-        -0.09419484233114649,
-        0.0,
-        0.0,
-        -0.01493410589053185,
-        0.0,
-        0.0
-      ],
-      [
-        14.366911966411747,
-        0.0,
-        338.8158606653012,
-        4041.8278311282743,
-        0.0,
-        22.965263920215293,
-        118.6953803965913,
-        0.9954576221305655,
-        -0.09520601783116185,
-        0.0,
-        0.0,
-        -0.015204570689570922,
-        0.0,
-        0.0
-      ],
-      [
-        14.54025856584105,
-        0.0,
-        342.79165812702206,
-        4062.230569766188,
-        0.0,
-        22.906041769806826,
-        116.70466500709198,
-        0.9953297932522208,
-        -0.09653336986814044,
-        0.0,
-        0.0,
-        -0.015545200624436373,
-        0.0,
-        0.0
-      ],
-      [
-        14.682392980564643,
-        0.0,
-        346.0439929275661,
-        4078.702777575183,
-        0.0,
-        22.858325321095112,
-        115.08008684168959,
-        0.9952213924813882,
-        -0.09764462828321567,
-        0.0,
-        0.0,
-        -0.015862772496865293,
-        0.0,
-        0.0
-      ],
-      [
-        14.824527395288236,
-        0.0,
-        349.28959684586766,
-        4094.9445613461276,
-        0.0,
-        22.811317112654358,
-        113.46229073873063,
-        0.9951093212561251,
-        -0.09878019544216407,
-        0.0,
-        0.0,
-        -0.016245816812105966,
-        0.0,
-        0.0
-      ],
-      [
-        14.966661810011828,
-        0.0,
-        352.5285690538264,
-        4110.956874305702,
-        0.0,
-        22.764996193073006,
-        111.85113279589336,
-        0.9949930128479635,
-        -0.0999448734740441,
-        0.0,
-        0.0,
-        -0.016699357691608036,
-        0.0,
-        0.0
-      ],
-      [
-        15.108796224735421,
-        0.0,
-        355.76100731200216,
-        4126.740649423031,
-        0.0,
-        22.71936656873293,
-        110.24646786908717,
-        0.9948719071126549,
-        -0.10114316944744317,
-        0.0,
-        0.0,
-        -0.017207357743500646,
-        0.0,
-        0.0
-      ],
-      [
-        15.286616031474669,
-        0.0,
-        359.79595909461364,
-        4146.166802209703,
-        0.0,
-        22.6632870217424,
-        108.24784378490638,
-        0.9947130503915103,
-        -0.10269358708935748,
-        0.0,
-        0.0,
-        -0.017874671647773024,
-        0.0,
-        0.0
-      ],
-      [
-        15.464435838213916,
-        0.0,
-        363.82104076389305,
-        4165.238421047197,
-        0.0,
-        22.60835565172267,
-        106.25887565788757,
-        0.9945456054452682,
-        -0.10430267631669903,
-        0.0,
-        0.0,
-        -0.01853479489026279,
-        0.0,
-        0.0
-      ],
-      [
-        15.642255644953163,
-        0.0,
-        367.83645730798713,
-        4183.957200728665,
-        0.0,
-        22.554591453555442,
-        104.27929664604501,
-        0.9943694604819499,
-        -0.1059688063502682,
-        0.0,
-        0.0,
-        -0.01915706909607845,
-        0.0,
-        0.0
-      ],
-      [
-        15.82007545169241,
-        0.0,
-        371.84241415572137,
-        4202.32478836345,
-        0.0,
-        22.50197818261214,
-        102.30885068203958,
-        0.9941846655018118,
-        -0.10768885310371056,
-        0.0,
-        0.0,
-        -0.019742510226198145,
-        0.0,
-        0.0
-      ],
-      [
-        15.997895258431658,
-        0.0,
-        375.8391119145174,
-        4220.342786877274,
-        0.0,
-        22.45046343770068,
-        100.34729898491805,
-        0.9939911677153658,
-        -0.10946067720838198,
-        0.0,
-        0.0,
-        -0.02032382994058533,
-        0.0,
-        0.0
-      ],
-      [
-        16.175715065170905,
-        0.0,
-        379.8267409148113,
-        4238.01275693487,
-        0.0,
-        22.399974689468692,
-        98.39441293729415,
-        0.9937885516112493,
-        -0.11128535124556117,
-        0.0,
-        0.0,
-        -0.020949295762640287,
-        0.0,
-        0.0
-      ],
-      [
-        16.353534871910153,
-        0.0,
-        383.80547887459505,
-        4255.336219206586,
-        0.0,
-        22.35044311501541,
-        96.44996961154533,
-        0.9935759164456247,
-        -0.11316803988678009,
-        0.0,
-        0.0,
-        -0.02166170385333344,
-        0.0,
-        0.0
-      ],
-      [
-        16.5313546786494,
-        0.0,
-        387.7754926890759,
-        4272.3146550832535,
-        0.0,
-        22.301824066888656,
-        94.51374785844686,
-        0.993351954671212,
-        -0.11511704827024105,
-        0.0,
-        0.0,
-        -0.02248158819853368,
-        0.0,
-        0.0
-      ],
-      [
-        16.709174485388647,
-        0.0,
-        391.7369432622272,
-        4288.94950629998,
-        0.0,
-        22.25410574487468,
-        92.58552236527376,
-        0.9931151824521242,
-        -0.11714161450058372,
-        0.0,
-        0.0,
-        -0.02340057129730887,
-        0.0,
-        0.0
-      ],
-      [
-        16.886994292127895,
-        0.0,
-        395.68999130818685,
-        4305.242175119014,
-        0.0,
-        22.207305414649728,
-        90.66506869278842,
-        0.9928642126071383,
-        -0.11924950858402045,
-        0.0,
-        0.0,
-        -0.02438712066026666,
-        0.0,
-        0.0
-      ],
-      [
-        17.0827216691956,
-        0.0,
-        400.03161859061527,
-        4322.781634546059,
-        0.0,
-        22.156887930062492,
-        88.55993075609109,
-        0.9925702729555927,
-        -0.12167136343879291,
-        0.0,
-        0.0,
-        -0.025504131417668583,
-        0.0,
-        0.0
-      ],
-      [
-        17.245756216665097,
-        0.0,
-        403.6405963506558,
-        4337.077483106853,
-        0.0,
-        22.115788917616843,
-        86.81319131988522,
-        0.9923105460891666,
-        -0.1237716514137726,
-        0.0,
-        0.0,
-        -0.02643079279582269,
-        0.0,
-        0.0
-      ],
-      [
-        17.408790764134594,
-        0.0,
-        407.242938831732,
-        4351.089044312425,
-        0.0,
-        22.075506910732813,
-        85.0724368129761,
-        0.9920368760252932,
-        -0.12594649276758965,
-        0.0,
-        0.0,
-        -0.02734482972771943,
-        0.0,
-        0.0
-      ],
-      [
-        17.57182531160409,
-        0.0,
-        410.8387777559037,
-        4364.817280775364,
-        0.0,
-        22.036020344121713,
-        83.33751688556217,
-        0.9917488561039103,
-        -0.12819508392934056,
-        0.0,
-        0.0,
-        -0.028258043544766253,
-        0.0,
-        0.0
-      ],
-      [
-        17.734859859073588,
-        0.0,
-        414.4282402687098,
-        4378.26313161687,
-        0.0,
-        21.997288706729808,
-        81.60828925630462,
-        0.9914458693781089,
-        -0.13051805040252618,
-        0.0,
-        0.0,
-        -0.0291982635926964,
-        0.0,
-        0.0
-      ],
-      [
-        17.87633414755382,
-        0.0,
-        417.53795815667394,
-        4389.702824783699,
-        0.0,
-        21.96424807590228,
-        80.11223240668194,
-        0.9911699576876161,
-        -0.13259688043393372,
-        0.0,
-        0.0,
-        -0.030065672306118337,
-        0.0,
-        0.0
-      ],
-      [
-        17.989632326456782,
-        0.0,
-        420.0249962561906,
-        4398.711756347876,
-        0.0,
-        21.93814341710253,
-        78.91708692083309,
-        0.9909396888098637,
-        -0.13430652823728462,
-        0.0,
-        0.0,
-        -0.030813131627893696,
-        0.0,
-        0.0
-      ],
-      [
-        18.102930505359744,
-        0.0,
-        422.5090949652586,
-        4407.58543143385,
-        0.0,
-        21.912347028719537,
-        77.72452242516663,
-        0.9907005033361946,
-        -0.13605912227105463,
-        0.0,
-        0.0,
-        -0.031610745359090545,
-        0.0,
-        0.0
-      ],
-      [
-        18.216228684262706,
-        0.0,
-        424.9902882576357,
-        4416.3241353496105,
-        0.0,
-        21.886852975417394,
-        76.53448991514048,
-        0.9904517810580278,
-        -0.1378574763198381,
-        0.0,
-        0.0,
-        -0.03245932412816131,
-        0.0,
-        0.0
-      ],
-      [
-        18.392123725075212,
-        0.0,
-        428.8366413149763,
-        4429.624062880907,
-        0.0,
-        21.847864932542493,
-        74.6918966429635,
-        0.990045451032921,
-        -0.14074556164791974,
-        0.0,
-        0.0,
-        -0.03387782209150726,
-        0.0,
-        0.0
-      ],
-      [
-        18.568018765887718,
-        0.0,
-        432.6761905961607,
-        4442.600326346328,
-        0.0,
-        21.809587702436684,
-        72.85513434439667,
-        0.9896121915905439,
-        -0.14376020990733135,
-        0.0,
-        0.0,
-        -0.03541468731291559,
-        0.0,
-        0.0
-      ],
-      [
-        18.743913806700224,
-        0.0,
-        436.509071247422,
-        4455.2540204874185,
-        0.0,
-        21.772021751457427,
-        71.02401974253866,
-        0.9891492087372259,
-        -0.14691181422173605,
-        0.0,
-        0.0,
-        -0.037057548939962374,
-        0.0,
-        0.0
-      ],
-      [
-        18.91980884751273,
-        0.0,
-        440.335409585913,
-        4467.586134194571,
-        0.0,
-        21.73517242362128,
-        69.19838316315212,
-        0.9886538391395144,
-        -0.150209008115309,
-        0.0,
-        0.0,
-        -0.0387917041722578,
-        0.0,
-        0.0
-      ],
-      [
-        19.13456671816614,
-        0.0,
-        444.9984640622586,
-        4482.2083189147825,
-        0.0,
-        21.691154821512836,
-        66.97657628405109,
-        0.9880012592424587,
-        -0.15444291577363714,
-        0.0,
-        0.0,
-        -0.041019029188057186,
-        0.0,
-        0.0
-      ],
-      [
-        19.349324588819552,
-        0.0,
-        449.6521799338817,
-        4496.354199264746,
-        0.0,
-        21.648195278473114,
-        64.76241058343483,
-        0.9872914967875086,
-        -0.15891714116711694,
-        0.0,
-        0.0,
-        -0.043365069829439606,
-        0.0,
-        0.0
-      ],
-      [
-        19.564082459472964,
-        0.0,
-        454.29677902912107,
-        4510.0253617525195,
-        0.0,
-        21.606256937470942,
-        62.55561855784645,
-        0.986519090361276,
-        -0.1636439256656135,
-        0.0,
-        0.0,
-        -0.04584971595853579,
-        0.0,
-        0.0
-      ],
-      [
-        19.778840330126375,
-        0.0,
-        458.9324749475551,
-        4523.223354445618,
-        0.0,
-        21.565279233281082,
-        60.35594575909821,
-        0.9856775648997481,
-        -0.1686386994687323,
-        0.0,
-        0.0,
-        -0.04851379070936632,
-        0.0,
-        0.0
-      ],
-      [
-        19.993598200779786,
-        0.0,
-        463.55946788527854,
-        4535.949685550058,
-        0.0,
-        21.525191325333463,
-        58.16314560974945,
-        0.9847590214361315,
-        -0.17392192277475144,
-        0.0,
-        0.0,
-        -0.051406125007116624,
-        0.0,
-        0.0
-      ],
-      [
-        20.208356071433197,
-        0.0,
-        468.1779423002786,
-        4548.205811789236,
-        0.0,
-        21.48592753079961,
-        55.976977881266485,
-        0.9837539302255014,
-        -0.1795192651009891,
-        0.0,
-        0.0,
-        -0.054570660899599915,
-        0.0,
-        0.0
-      ],
-      [
-        20.42311394208661,
-        0.0,
-        472.78806875533326,
-        4559.993134299255,
-        0.0,
-        21.447435217207968,
-        53.797207947450694,
-        0.9826510896995412,
-        -0.18546048677534613,
-        0.0,
-        0.0,
-        -0.058040748093501855,
-        0.0,
-        0.0
-      ],
-      [
-        20.63787181274002,
-        0.0,
-        477.3900075256288,
-        4571.313001122473,
-        0.0,
-        21.40967328445965,
-        51.62360362072574,
-        0.9814376304550145,
-        -0.1917780016022379,
-        0.0,
-        0.0,
-        -0.06184044788914598,
-        0.0,
-        0.0
-      ],
-      [
-        20.89524769419444,
-        0.0,
-        482.89461403240244,
-        4584.265272162691,
-        0.0,
-        21.365330862505818,
-        49.02645913467016,
-        0.9798170053277037,
-        -0.19989309577674766,
-        0.0,
-        0.0,
-        -0.06685741225396631,
-        0.0,
-        0.0
-      ],
-      [
-        21.152623575648857,
-        0.0,
-        488.38792915121104,
-        4596.550157244159,
-        0.0,
-        21.321930196306727,
-        46.43747009889994,
-        0.9779876120035311,
-        -0.2086599874419324,
-        0.0,
-        0.0,
-        -0.07241504330826458,
-        0.0,
-        0.0
-      ],
-      [
-        21.409999457103275,
-        0.0,
-        493.87018775830194,
-        4608.169709821913,
-        0.0,
-        21.279403742607382,
-        43.856280755736414,
-        0.9759158432580332,
-        -0.21814481883269105,
-        0.0,
-        0.0,
-        -0.07856483540694591,
-        0.0,
-        0.0
-      ],
-      [
-        21.667375338557694,
-        0.0,
-        499.3416052805457,
-        4619.125894822642,
-        0.0,
-        21.23766527721712,
-        41.28255827427988,
-        0.9735620622835762,
-        -0.2284200990625817,
-        0.0,
-        0.0,
-        -0.0853792923148765,
-        0.0,
-        0.0
-      ],
-      [
-        21.924751220012112,
-        0.0,
-        504.8023725217576,
-        4629.420593779235,
-        0.0,
-        21.196617506158983,
-        38.71599494431441,
-        0.9708790285877134,
-        -0.239567094168921,
-        0.0,
-        0.0,
-        -0.09294661911306523,
-        0.0,
-        0.0
-      ],
-      [
-        22.18212710146653,
-        0.0,
-        510.2526544528634,
-        4639.055611666154,
-        0.0,
-        21.156167901599524,
-        36.1563067773245,
-        0.9678103596449388,
-        -0.2516766393861016,
-        0.0,
-        0.0,
-        -0.10135857948476697,
-        0.0,
-        0.0
-      ],
-      [
-        22.469164792221026,
-        0.0,
-        516.3188720046622,
-        4649.025058618057,
-        0.0,
-        21.11166114276054,
-        33.30941166309532,
-        0.9638505529512653,
-        -0.26643899369614626,
-        0.0,
-        0.0,
-        -0.11184955373130058,
-        0.0,
-        0.0
-      ],
-      [
-        22.75620248297552,
-        0.0,
-        522.3723940649965,
-        4658.178481453551,
-        0.0,
-        21.067693063112955,
-        30.47041902833708,
-        0.9592152517206293,
-        -0.2826717730914073,
-        0.0,
-        0.0,
-        -0.12364207289986608,
-        0.0,
-        0.0
-      ],
-      [
-        23.043240173730016,
-        0.0,
-        528.41336139313,
-        4666.518108184219,
-        0.0,
-        21.024172381398206,
-        27.639052203440755,
-        0.9537682628890752,
-        -0.30053647969525277,
-        0.0,
-        0.0,
-        -0.13688624657400622,
-        0.0,
-        0.0
-      ],
-      [
-        23.33027786448451,
-        0.0,
-        534.4418910378106,
-        4674.046093770652,
-        0.0,
-        20.98102125802392,
-        24.815086315112325,
-        0.9473448498290631,
-        -0.3202057884486781,
-        0.0,
-        0.0,
-        -0.15174817795192502,
-        0.0,
-        0.0
-      ],
-      [
-        23.617315555239006,
-        0.0,
-        540.4580823073699,
-        4680.764535999135,
-        0.0,
-        20.938193635386686,
-        21.998349768733345,
-        0.9397455618994416,
-        -0.34186176482436764,
-        0.0,
-        0.0,
-        -0.16840020966755256,
-        0.0,
-        0.0
-      ],
-      [
-        23.9043532459935,
-        0.0,
-        546.4620277167797,
-        4686.675491725959,
-        0.0,
-        20.89569353611247,
-        19.188726915207514,
-        0.9307294411727506,
-        -0.36569172816625745,
-        0.0,
-        0.0,
-        -0.18701308565760458,
-        0.0,
-        0.0
-      ],
-      [
-        24.191390936747997,
-        0.0,
-        552.453829192986,
-        4691.780993429837,
-        0.0,
-        20.853588330202875,
-        16.38616196552707,
-        0.9200068042629258,
-        -0.3918815907380139,
-        0.0,
-        0.0,
-        -0.20775311787991974,
-        0.0,
-        0.0
-      ],
-      [
-        24.419341542299552,
-        0.0,
-        557.2036434252168,
-        4695.263049857002,
-        0.0,
-        20.82052323236322,
-        14.165541164538668,
-        0.9100486937627128,
-        -0.4144792337277696,
-        0.0,
-        0.0,
-        -0.22584683603098044,
-        0.0,
-        0.0
-      ],
-      [
-        24.647292147851108,
-        0.0,
-        561.9459688774699,
-        4698.239425530231,
-        0.0,
-        20.78790719543295,
-        11.949416441032591,
-        0.8985953149593534,
-        -0.4387557288450408,
-        0.0,
-        0.0,
-        -0.24546477025061864,
-        0.0,
-        0.0
-      ],
-      [
-        24.875242753402663,
-        0.0,
-        566.6809249996485,
-        4700.711153593207,
-        0.0,
-        20.755893740274615,
-        9.737862433278812,
-        0.8854154560331997,
-        -0.4647773547608616,
-        0.0,
-        0.0,
-        -0.26668891968236785,
-        0.0,
-        0.0
-      ],
-      [
-        25.10319335895422,
-        0.0,
-        571.408671920042,
-        4702.679287982603,
-        0.0,
-        20.72468831087648,
-        7.530990882421007,
-        0.8702462690249064,
-        -0.4925930881768016,
-        0.0,
-        0.0,
-        -0.2896030904515788,
-        0.0,
-        0.0
-      ],
-      [
-        25.331143964505774,
-        0.0,
-        576.1294239692401,
-        4704.144911517209,
-        0.0,
-        20.694564986271548,
-        5.328946255750039,
-        0.8527903717847588,
-        -0.5222284784542963,
-        0.0,
-        0.0,
-        -0.31428918473399703,
-        0.0,
-        0.0
-      ],
-      [
-        25.51872139829633,
-        0.0,
-        580.0090178192057,
-        4704.974850369316,
-        0.0,
-        20.67084391264376,
-        3.520646642066182,
-        0.8364767232322255,
-        -0.5479774495689682,
-        0.0,
-        0.0,
-        -0.3359801774628975,
-        0.0,
-        0.0
-      ],
-      [
-        25.706298832086883,
-        0.0,
-        583.8842737777716,
-        4705.465915074924,
-        0.0,
-        20.648366615518654,
-        1.7157996483994111,
-        0.8181841944656217,
-        -0.5749315374128604,
-        0.0,
-        0.0,
-        -0.358937575303498,
-        0.0,
-        0.0
-      ],
-      [
-        25.884966627110675,
-        0.0,
-        587.571667955855,
-        4705.619138642921,
-        0.0,
-        20.62841353686416,
-        -7.885667235144929e-05,
-        0.7987181172176255,
-        -0.6016810927382713,
-        0.0,
-        0.0,
-        -0.3819719085342338,
-        0.0,
-        0.0
-      ],
-      [
-        25.88571428571429,
-        0.0,
-        587.5870909383868,
-        4705.619135901133,
-        0.0,
-        20.628333492949192,
-        -0.007252527661659476,
-        0.7986321824215356,
-        -0.6017951510408494,
-        0.0,
-        0.0,
-        -0.382070648231785,
-        0.0,
-        0.0
-      ],
-      [
-        25.891724887187262,
-        0.0,
-        587.7110757750461,
-        4705.618745695771,
-        0.0,
-        20.6276921345739,
-        -0.06491953842787385,
-        0.7979386843639786,
-        -0.6027132806854469,
-        0.0,
-        0.0,
-        -0.3828657613771747,
-        0.0,
-        0.0
-      ],
-      [
-        25.897735488660235,
-        0.0,
-        587.8350567689373,
-        4705.618008898182,
-        0.0,
-        20.627052802863556,
-        -0.12258302355757354,
-        0.7972426839880852,
-        -0.6036325174631182,
-        0.0,
-        0.0,
-        -0.3836620912288272,
-        0.0,
-        0.0
-      ],
-      [
-        25.909756691606184,
-        0.0,
-        588.0830110958042,
-        4705.615842160855,
-        0.0,
-        20.625778224235496,
-        -0.2379029359579808,
-        0.79584565843976,
-        -0.6054731952629437,
-        0.0,
-        0.0,
-        -0.3852571909396917,
-        0.0,
-        0.0
-      ],
-      [
-        25.921777894552132,
-        0.0,
-        588.3309501502218,
-        4705.612289224086,
-        0.0,
-        20.624511872840134,
-        -0.3532087498087675,
-        0.7944385516302317,
-        -0.607318268098063,
-        0.0,
-        0.0,
-        -0.386857155580213,
-        0.0,
-        0.0
-      ],
-      [
-        25.93379909749808,
-        0.0,
-        588.578874031719,
-        4705.607350257254,
-        0.0,
-        20.623253864480525,
-        -0.46850050081792555,
-        0.7930213001991836,
-        -0.6091677086604782,
-        0.0,
-        0.0,
-        -0.38846195417065255,
-        0.0,
-        0.0
-      ],
-      [
-        26.05401112695755,
-        0.0,
-        591.0573011931003,
-        4705.481764744916,
-        0.0,
-        20.611158476983945,
-        -1.6206552580372067,
-        0.7782771385960771,
-        -0.6278956917972861,
-        0.0,
-        0.0,
-        -0.40476736995545526,
-        0.0,
-        0.0
-      ],
-      [
-        26.17422315641702,
-        0.0,
-        593.5343318868873,
-        4705.2177583208,
-        0.0,
-        20.600031469250656,
-        -2.7714668873143613,
-        0.7624481954232438,
-        -0.6470244307601276,
-        0.0,
-        0.0,
-        -0.42150806320675477,
-        0.0,
-        0.0
-      ],
-      [
-        26.29443518587649,
-        0.0,
-        596.010089497206,
-        4704.815486547963,
-        0.0,
-        20.58999870705553,
-        -3.9210284374654347,
-        0.7454713306061495,
-        -0.6665132645794409,
-        0.0,
-        0.0,
-        -0.4386195522122807,
-        0.0,
-        0.0
-      ],
-      [
-        26.41464721533596,
-        0.0,
-        598.4847130971966,
-        4704.275091782821,
-        0.0,
-        20.581185517968006,
-        -5.069479593516679,
-        0.7272849349924264,
-        -0.6863116379330556,
-        0.0,
-        0.0,
-        -0.45600998328912346,
-        0.0,
-        0.0
-      ],
-      [
-        26.590536971802308,
-        0.0,
-        602.1037677124255,
-        4703.235757386192,
-        0.0,
-        20.570721109533874,
-        -6.748265986126657,
-        0.6983770144973409,
-        -0.7157074559635492,
-        0.0,
-        0.0,
-        -0.48169088542536564,
-        0.0,
-        0.0
-      ],
-      [
-        26.766426728268655,
-        0.0,
-        605.7212519288681,
-        4701.9012525901635,
-        0.0,
-        20.563364390826663,
-        -8.425960744861667,
-        0.6666040719913032,
-        -0.7453908939003069,
-        0.0,
-        0.0,
-        -0.5071478488091251,
-        0.0,
-        0.0
-      ],
-      [
-        26.942316484735002,
-        0.0,
-        609.3377198547713,
-        4700.271670188219,
-        0.0,
-        20.559145738777516,
-        -10.103739147515604,
-        0.6318660761782732,
-        -0.7750579518583934,
-        0.0,
-        0.0,
-        -0.5316136291330492,
-        0.0,
-        0.0
-      ],
-      [
-        27.11820624120135,
-        0.0,
-        612.9536997422538,
-        4698.346870261729,
-        0.0,
-        20.55772829088883,
-        -11.783077763296165,
-        0.594144529744393,
-        -0.8043402287210464,
-        0.0,
-        0.0,
-        -0.5540674289699822,
-        0.0,
-        0.0
-      ],
-      [
-        27.294095997667696,
-        0.0,
-        616.5696171869565,
-        4696.1264309283315,
-        0.0,
-        20.558248172528167,
-        -13.46568773576242,
-        0.5535370805517908,
-        -0.8328081719113818,
-        0.0,
-        0.0,
-        -0.5732064198432089,
-        0.0,
-        0.0
-      ],
-      [
-        27.38571428571429,
-        0.0,
-        618.4531547196009,
-        4694.8525029610055,
-        0.0,
-        20.558807275124913,
-        -14.344033789049263,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        27.403707346930535,
-        0.0,
-        618.8207433949605,
-        4694.594137104788,
-        0.0,
-        20.429453461136745,
-        -14.359187784476733,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        27.42170040814678,
-        0.0,
-        619.1860280126579,
-        4694.335494107232,
-        0.0,
-        20.301401232529862,
-        -14.374590591614751,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        27.457686530579274,
-        0.0,
-        619.9120347947476,
-        4693.8176452114985,
-        0.0,
-        20.047849021794377,
-        -14.40588123114846,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        27.493672653011767,
-        0.0,
-        620.6290072580573,
-        4693.298653387583,
-        0.0,
-        19.79931662416585,
-        -14.438117611099962,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        27.52965877544426,
-        0.0,
-        621.3371233424167,
-        4692.778485344035,
-        0.0,
-        19.55563855421159,
-        -14.471252144279237,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        27.722358182653522,
-        0.0,
-        624.9848015224276,
-        4689.971906894761,
-        0.0,
-        18.327502324052535,
-        -14.662246605128257,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        27.915057589862784,
-        0.0,
-        628.4072963356747,
-        4687.126630426356,
-        0.0,
-        17.212932747824436,
-        -14.871472361391335,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        28.107756997072045,
-        0.0,
-        631.6246232786336,
-        4684.2396789317245,
-        0.0,
-        16.195147198022525,
-        -15.093861007060656,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        28.300456404281306,
-        0.0,
-        634.654042087447,
-        4681.308951092508,
-        0.0,
-        15.260510256673989,
-        -15.325176679104269,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        28.59167900359794,
-        0.0,
-        638.9085803235097,
-        4676.793790242113,
-        0.0,
-        13.98145883031594,
-        -15.683920070704701,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        28.882901602914572,
-        0.0,
-        642.8109169650706,
-        4672.173568649324,
-        0.0,
-        12.837537927551223,
-        -16.04529984792546,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        29.174124202231205,
-        0.0,
-        646.396832345016,
-        4667.448719361017,
-        0.0,
-        11.806379395590385,
-        -16.401864789127764,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        29.465346801547838,
-        0.0,
-        649.6967469138201,
-        4662.621424905605,
-        0.0,
-        10.870678599783055,
-        -16.747888396123965,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        29.75656940086447,
-        0.0,
-        652.7364232278424,
-        4657.6954092868,
-        0.0,
-        10.017239896103352,
-        -17.07923682087838,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        30.25579246872472,
-        0.0,
-        657.40477896461,
-        4649.035407764717,
-        0.0,
-        8.716916879654493,
-        -17.60520463858633,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        30.75501553658497,
-        0.0,
-        661.468319660548,
-        4640.127624048603,
-        0.0,
-        7.590205454561299,
-        -18.071657069823413,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        31.25423860444522,
-        0.0,
-        665.0070381710351,
-        4631.002256823934,
-        0.0,
-        6.608733038466849,
-        -18.476129470551438,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        31.75346167230547,
-        0.0,
-        668.0876644457433,
-        4621.690081989042,
-        0.0,
-        5.751995501252918,
-        -18.82062184021122,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        32.25268474016572,
-        0.0,
-        670.7681433905101,
-        4612.220108367456,
-        0.0,
-        5.003562152218165,
-        -19.109516284000026,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        32.75190780802597,
-        0.0,
-        673.0991797785254,
-        4602.6185932483795,
-        0.0,
-        4.349767996446823,
-        -19.348421899021595,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        33.48826295234864,
-        0.0,
-        675.9918160921599,
-        4588.2650403922835,
-        0.0,
-        3.534083702581345,
-        -19.62278319221666,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        34.224618096671314,
-        0.0,
-        678.3406479924136,
-        4573.738517875715,
-        0.0,
-        2.867791728724486,
-        -19.821508398039786,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        34.96097324099399,
-        0.0,
-        680.2456556549695,
-        4559.088119330439,
-        0.0,
-        2.324745894428369,
-        -19.962046728976834,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        35.69732838531666,
-        0.0,
-        681.7892769933874,
-        4544.351143816639,
-        0.0,
-        1.8829976901606464,
-        -20.058812911352568,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        36.43368352963933,
-        0.0,
-        683.0391942411616,
-        4529.555379289225,
-        0.0,
-        1.5242158332255114,
-        -20.12323662642938,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        37.18331742700439,
-        0.0,
-        684.0670585265121,
-        4514.453522813795,
-        0.0,
-        1.2284884671677812,
-        -20.164713234901807,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        37.93295132436945,
-        0.0,
-        684.8953370469966,
-        4499.327461287193,
-        0.0,
-        0.9897646820042898,
-        -20.188768281927604,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        38.682585221734506,
-        0.0,
-        685.5625678514652,
-        4484.188244358569,
-        0.0,
-        0.7972050085727818,
-        -20.20048748192955,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        39.432219119099564,
-        0.0,
-        686.0999309413735,
-        4469.043675828442,
-        0.0,
-        0.6419724309551407,
-        -20.203549940519196,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        40.18185301646462,
-        0.0,
-        686.5326230803462,
-        4453.899210174602,
-        0.0,
-        0.5168847122178869,
-        -20.200577772780758,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        41.55565606299418,
-        0.0,
-        687.1189494841227,
-        4426.157091074739,
-        0.0,
-        0.3472670981772881,
-        -20.185251309454944,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        42.92945910952374,
-        0.0,
-        687.5126150669946,
-        4398.441149665407,
-        0.0,
-        0.23330264315826335,
-        -20.16241155285943,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        44.3032621560533,
-        0.0,
-        687.7768992461017,
-        4370.759070631617,
-        0.0,
-        0.15675595989014657,
-        -20.136024040903372,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        45.67706520258286,
-        0.0,
-        687.9545086081952,
-        4343.114927883857,
-        0.0,
-        0.10529532848161156,
-        -20.108275143641187,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        47.05086824911242,
-        0.0,
-        688.0737915436763,
-        4315.509667789355,
-        0.0,
-        0.07072289672802728,
-        -20.07968338446567,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        48.62323521534373,
-        0.0,
-        688.1630846184414,
-        4283.962775491761,
-        0.0,
-        0.04483429568029205,
-        -20.04631521782799,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        50.19560218157505,
-        0.0,
-        688.2196019036872,
-        4252.4685658295,
-        0.0,
-        0.02844331972709388,
-        -20.01299090248034,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        51.76796914780636,
-        0.0,
-        688.2554400056986,
-        4221.027136218258,
-        0.0,
-        0.018046649303516394,
-        -19.97987789911877,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        53.340336114037676,
-        0.0,
-        688.278197221349,
-        4189.637572284409,
-        0.0,
-        0.011442676750387779,
-        -19.946565641072326,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        54.91270308026899,
-        0.0,
-        688.2926145743684,
-        4158.300062508344,
-        0.0,
-        0.0072576278576346335,
-        -19.91328470336088,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        55.86204148248446,
-        0.0,
-        688.2986172337936,
-        4139.405058407817,
-        0.0,
-        0.00551479001524429,
-        -19.89340275326872,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        56.811379884699925,
-        0.0,
-        688.3031913051037,
-        4120.5289461922,
-        0.0,
-        0.004186503955638961,
-        -19.873555179053113,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        57.76071828691539,
-        0.0,
-        688.3066638128003,
-        4101.671625116861,
-        0.0,
-        0.003177929592726124,
-        -19.85371034644885,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        58.71005668913086,
-        0.0,
-        688.3092990764003,
-        4082.8331271644156,
-        0.0,
-        0.002412399653510828,
-        -19.833913484403276,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        59.701612671241776,
-        0.0,
-        688.3113897259348,
-        4063.176919890834,
-        0.0,
-        0.0018049797613144242,
-        -19.813290558132003,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        60.69316865335269,
-        0.0,
-        688.3129518210394,
-        4043.5411363876096,
-        0.0,
-        0.0013510475245925478,
-        -19.792714966460693,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        61.68472463546361,
-        0.0,
-        688.3141198896323,
-        4023.925727720395,
-        0.0,
-        0.0010115574345006821,
-        -19.772188415475508,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        63.019700273431596,
-        0.0,
-        688.3152459801388,
-        3997.548729191108,
-        0.0,
-        0.0006842055204830875,
-        -19.744634011835828,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        64.35467591139958,
-        0.0,
-        688.3160047612031,
-        3971.208452810731,
-        0.0,
-        0.0004635791254229872,
-        -19.717173725913877,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        65.68965154936757,
-        0.0,
-        688.3165182490624,
-        3944.904773122636,
-        0.0,
-        0.00031424140793507205,
-        -19.689807230872827,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        67.66870000169779,
-        0.0,
-        688.3169917964283,
-        3905.977666220096,
-        0.0,
-        0.00017648524175357478,
-        -19.64940899136676,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        69.647748454028,
-        0.0,
-        688.3172500830847,
-        3867.1303083540756,
-        0.0,
-        0.000101324204107567,
-        -19.60921446135578,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        71.62679690635822,
-        0.0,
-        688.317396430148,
-        3828.3622977430537,
-        0.0,
-        5.872353870607266e-05,
-        -19.569222101513173,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        73.60427163292789,
-        0.0,
-        688.3174819744265,
-        3789.703969623478,
-        0.0,
-        3.381426152251358e-05,
-        -19.529461880037264,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        75.58174635949756,
-        0.0,
-        688.3175316513933,
-        3751.124069697405,
-        0.0,
-        1.9344542223839884e-05,
-        -19.48990041637014,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        77.55922108606723,
-        0.0,
-        688.3175600324931,
-        3712.6222063528967,
-        0.0,
-        1.1075266633169499e-05,
-        -19.45053629005537,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        83.74360774187622,
-        0.0,
-        688.317556874999,
-        3592.7094187996445,
-        0.0,
-        1.200490002735747e-05,
-        -19.328715709096358,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        89.92799439768521,
-        0.0,
-        688.3174445351303,
-        3473.545038429077,
-        0.0,
-        4.479275841641786e-05,
-        -19.209125955490833,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        91.47409106163745,
-        0.0,
-        688.3174543440316,
-        3443.869466235316,
-        0.0,
-        4.192713971459046e-05,
-        -19.179404080844943,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        93.0201877255897,
-        0.0,
-        688.3175073626718,
-        3414.2393500764,
-        0.0,
-        2.6443643463219835e-05,
-        -19.149570150511778,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        94.56628438954193,
-        0.0,
-        688.3175439204583,
-        3384.655008756703,
-        0.0,
-        1.5765393684626567e-05,
-        -19.11991142839404,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        95.55174469780209,
-        0.0,
-        688.3175576824162,
-        3365.8222838769693,
-        0.0,
-        1.1744910617004991e-05,
-        -19.101160936622012,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        96.53720500606225,
-        0.0,
-        688.317567732238,
-        3347.0080553283988,
-        0.0,
-        8.808534509979418e-06,
-        -19.082490205427078,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        97.52266531432241,
-        0.0,
-        688.3175752942495,
-        3328.212207637749,
-        0.0,
-        6.5987673082499965e-06,
-        -19.06385778075194,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        98.50866761324593,
-        0.0,
-        688.3175809685952,
-        3309.4243726251616,
-        0.0,
-        4.9404010093685634e-06,
-        -19.045252524661628,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        104.229915181177,
-        0.0,
-        688.3175986542846,
-        3200.7672601153686,
-        0.0,
-        -2.2720735348401666e-07,
-        -18.938174225770577,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        109.95116274910808,
-        0.0,
-        688.3176010265662,
-        3092.7177024797775,
-        0.0,
-        -9.236485887127397e-07,
-        -18.83256735863523,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        115.67241031703915,
-        0.0,
-        688.317599735014,
-        2985.267951893604,
-        0.0,
-        -5.45941970306712e-07,
-        -18.728405962025615,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        123.80427445904986,
-        0.0,
-        688.317596335923,
-        2833.5643143411185,
-        0.0,
-        4.450639841430881e-07,
-        -18.582771077350312,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        131.93613860106058,
-        0.0,
-        688.3175940646478,
-        2683.0355424866752,
-        0.0,
-        1.1284063920414296e-06,
-        -18.439890243837205,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        140.0680027430713,
-        0.0,
-        688.317595387251,
-        2533.6577547283523,
-        0.0,
-        7.600047035415227e-07,
-        -18.299647080845098,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        148.19986688508203,
-        0.0,
-        688.317596967162,
-        2385.4095317907136,
-        0.0,
-        3.140594782801539e-07,
-        -18.161964097092135,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        158.3904761904762,
-        0.0,
-        688.3175981674723,
-        2201.1930814298207,
-        0.0,
-        -2.7655338523650922e-08,
-        -17.992926109690732,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        158.5093989588007,
-        0.0,
-        688.3175981642944,
-        2199.053544740123,
-        0.0,
-        -2.6721133394784114e-08,
-        -17.990976134642636,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        158.62832172712518,
-        0.0,
-        688.3175981612238,
-        2196.9142398830672,
-        0.0,
-        -2.5818479003996702e-08,
-        -17.98902669592209,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        159.8904761904762,
-        0.0,
-        688.3175981337685,
-        2174.222347147565,
-        0.0,
-        -1.7747078498098196e-08,
-        -17.968367264765266,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        159.89288732694692,
-        0.0,
-        688.317598133726,
-        2174.1792955499623,
-        0.0,
-        -1.762294086507308e-08,
-        -17.855290687535398,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        159.89529846341765,
-        0.0,
-        688.3175981336839,
-        2174.1365128215616,
-        0.0,
-        -1.7500435772770565e-08,
-        -17.743779882144654,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        159.90012073635913,
-        0.0,
-        688.3175981336001,
-        2174.051477777916,
-        0.0,
-        -1.7258615777559936e-08,
-        -17.523818403461338,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        159.9049430093006,
-        0.0,
-        688.3175981335174,
-        2173.967489039653,
-        0.0,
-        -1.702305091622533e-08,
-        -17.309856801091588,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        159.9097652822421,
-        0.0,
-        688.3175981334359,
-        2173.884518182321,
-        0.0,
-        -1.6793497455553377e-08,
-        -17.101660802341886,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        159.93243780659526,
-        0.0,
-        688.3175981330668,
-        2173.5073233043922,
-        0.0,
-        -1.5788659752475914e-08,
-        -16.194180885977158,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        159.95511033094843,
-        0.0,
-        688.3175981327192,
-        2173.1494775493015,
-        0.0,
-        -1.489084973179556e-08,
-        -15.389296329378718,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        159.9777828553016,
-        0.0,
-        688.3175981323909,
-        2172.8088642234607,
-        0.0,
-        -1.4083706567378026e-08,
-        -14.671279311049883,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.00045537965477,
-        0.0,
-        688.31759813208,
-        2172.4836677762364,
-        0.0,
-        -1.3353932940267511e-08,
-        -14.027345355319348,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.0346633693688,
-        0.0,
-        688.3175981316402,
-        2172.018780074152,
-        0.0,
-        -1.2375592816116182e-08,
-        -13.173206854209772,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.0688713590828,
-        0.0,
-        688.3175981312318,
-        2171.5810375093743,
-        0.0,
-        -1.1519961365479057e-08,
-        -12.436336751182058,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.10307934879683,
-        0.0,
-        688.3175981308508,
-        2171.1668262903786,
-        0.0,
-        -1.0764951769201414e-08,
-        -11.795481714488314,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.13728733851084,
-        0.0,
-        688.3175981304943,
-        2170.7731348530915,
-        0.0,
-        -1.0093245509504896e-08,
-        -11.233965319240346,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.17149532822486,
-        0.0,
-        688.3175981301596,
-        2170.397483088144,
-        0.0,
-        -9.49142391978041e-09,
-        -10.738864815884444,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.23106728260558,
-        0.0,
-        688.3175981296222,
-        2169.780319456594,
-        0.0,
-        -8.579570536948881e-09,
-        -10.005693917373991,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.2906392369863,
-        0.0,
-        688.3175981291347,
-        2169.2028167611406,
-        0.0,
-        -7.806066288108053e-09,
-        -9.402989858919394,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.350211191367,
-        0.0,
-        688.31759812869,
-        2168.658044835575,
-        0.0,
-        -7.140226294821968e-09,
-        -8.901116887176046,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.40978314574772,
-        0.0,
-        688.3175981282823,
-        2168.1406992969037,
-        0.0,
-        -6.56053015100352e-09,
-        -8.47928269360972,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.46935510012844,
-        0.0,
-        688.317598127907,
-        2167.6465100312507,
-        0.0,
-        -6.050780499317661e-09,
-        -8.121810964988383,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.52892705450915,
-        0.0,
-        688.3175981275604,
-        2167.171998639805,
-        0.0,
-        -5.598619227003807e-09,
-        -7.816712593241391,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.6259323588013,
-        0.0,
-        688.317598127049,
-        2166.4343129434574,
-        0.0,
-        -4.961900302584235e-09,
-        -7.409002936838254,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.72293766309343,
-        0.0,
-        688.3175981265945,
-        2165.731827158465,
-        0.0,
-        -4.422959084509449e-09,
-        -7.086838254601808,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.81994296738557,
-        0.0,
-        688.3175981261884,
-        2165.0572936108597,
-        0.0,
-        -3.960593858885608e-09,
-        -6.829609401680868,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        160.9169482716777,
-        0.0,
-        688.3175981258241,
-        2164.405183691173,
-        0.0,
-        -3.5595889153320393e-09,
-        -6.622560753942356,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        161.01395357596985,
-        0.0,
-        688.3175981254963,
-        2163.7711778945923,
-        0.0,
-        -3.2086637835749557e-09,
-        -6.454780799044033,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        161.110958880262,
-        0.0,
-        688.3175981252003,
-        2163.151882758367,
-        0.0,
-        -2.899296992113971e-09,
-        -6.318088637090738,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        161.26736304673776,
-        0.0,
-        688.3175981247814,
-        2162.177725833502,
-        0.0,
-        -2.4719177497273244e-09,
-        -6.147902730224142,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        161.42376721321352,
-        0.0,
-        688.3175981244235,
-        2161.2263620135013,
-        0.0,
-        -2.1153029692372627e-09,
-        -6.023550864392032,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        161.5801713796893,
-        0.0,
-        688.3175981241168,
-        2160.291749925557,
-        0.0,
-        -1.8151112544438768e-09,
-        -5.932210361120624,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        161.73657554616506,
-        0.0,
-        688.3175981238534,
-        2159.369472596423,
-        0.0,
-        -1.5606748921761581e-09,
-        -5.864782458516564,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        161.89297971264082,
-        0.0,
-        688.3175981236267,
-        2158.456299627962,
-        0.0,
-        -1.3438963341956769e-09,
-        -5.814778485714997,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        162.11653214894974,
-        0.0,
-        688.317598123356,
-        2157.1623612484773,
-        0.0,
-        -1.087207909796379e-09,
-        -5.7646442579853545,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        162.34008458525867,
-        0.0,
-        688.3175981231368,
-        2155.8776197244206,
-        0.0,
-        -8.808988212625997e-10,
-        -5.731742123989117,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        162.5636370215676,
-        0.0,
-        688.3175981229592,
-        2154.5988977379266,
-        0.0,
-        -7.144383302183885e-10,
-        -5.709995841782196,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        162.7871894578765,
-        0.0,
-        688.3175981228151,
-        2153.3241443109277,
-        0.0,
-        -5.797974974923092e-10,
-        -5.695523598681248,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        163.01074189418543,
-        0.0,
-        688.3175981226981,
-        2152.0520539928652,
-        0.0,
-        -4.707317763988003e-10,
-        -5.685870117201261,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        163.3020518484637,
-        0.0,
-        688.317598122578,
-        2150.396989724479,
-        0.0,
-        -3.589894741101628e-10,
-        -5.677888056654785,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        163.59336180274195,
-        0.0,
-        688.3175981224865,
-        2148.7437430056916,
-        0.0,
-        -2.7387208136061467e-10,
-        -5.673031974904168,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        163.88467175702021,
-        0.0,
-        688.3175981224166,
-        2147.0915930067044,
-        0.0,
-        -2.0894777026865914e-10,
-        -5.669958770383309,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        164.17598171129848,
-        0.0,
-        688.3175981223633,
-        2145.4401693035356,
-        0.0,
-        -1.5942756217369166e-10,
-        -5.667979527202904,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        164.4850936705858,
-        0.0,
-        688.3175981223202,
-        2143.6883441659966,
-        0.0,
-        -1.1940602470475593e-10,
-        -5.666561111403468,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        164.79420562987312,
-        0.0,
-        688.3175981222879,
-        2141.936905707878,
-        0.0,
-        -8.947511565226271e-11,
-        -5.665573466327542,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        165.10331758916044,
-        0.0,
-        688.3175981222637,
-        2140.1857407966095,
-        0.0,
-        -6.706958274973267e-11,
-        -5.664806528823159,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        165.4129391221861,
-        0.0,
-        688.3175981222455,
-        2138.4319034844016,
-        0.0,
-        -5.0250742050692855e-11,
-        -5.664148566167016,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        165.72256065521174,
-        0.0,
-        688.3175981222319,
-        2136.6782559129897,
-        0.0,
-        -3.7649153539152494e-11,
-        -5.663554861359223,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        166.03218218823739,
-        0.0,
-        688.3175981222217,
-        2134.924784716738,
-        0.0,
-        -2.820775168000464e-11,
-        -5.66300066023901,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        166.34184757413777,
-        0.0,
-        688.3175981222141,
-        2133.1712327033265,
-        0.0,
-        -2.113314464385818e-11,
-        -5.662469469881545,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        167.93141144685217,
-        0.0,
-        688.3175981221924,
-        2124.1724482063355,
-        0.0,
-        -9.348914750846833e-13,
-        -5.659835284399032,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        169.52097531956656,
-        0.0,
-        688.3175981221882,
-        2115.1777852823375,
-        0.0,
-        2.9223059221453355e-12,
-        -5.657276371125363,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        171.11053919228095,
-        0.0,
-        688.317598122189,
-        2106.1872020435494,
-        0.0,
-        2.1210762323691097e-12,
-        -5.654723003256346,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        175.76088994831585,
-        0.0,
-        688.3175981221898,
-        2079.9081283028127,
-        0.0,
-        1.4726621256114677e-12,
-        -5.6472425281268475,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        180.41124070435075,
-        0.0,
-        688.317598122191,
-        2053.6637942033835,
-        0.0,
-        3.24597877880932e-13,
-        -5.639781955100809,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        185.06159146038564,
-        0.0,
-        688.3175981221915,
-        2027.4540924456926,
-        0.0,
-        -1.4787573104879128e-14,
-        -5.6323462381479885,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        202.12571753179242,
-        0.0,
-        688.3175981221916,
-        1931.5732798854199,
-        0.0,
-        -1.512570101684935e-13,
-        -5.605274291508229,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        219.1898436031992,
-        0.0,
-        688.3175981221914,
-        1836.1511418822286,
-        0.0,
-        -1.6999500339107036e-14,
-        -5.578533604727581,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        236.25396967460597,
-        0.0,
-        688.3175981221914,
-        1741.1823651854436,
-        0.0,
-        2.3974875583158126e-15,
-        -5.552121195490627,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        261.9195710352043,
-        0.0,
-        688.3175981221913,
-        1599.18670606518,
-        0.0,
-        9.6399638804553e-14,
-        -5.513006361484326,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        287.5851723958026,
-        0.0,
-        688.3175981221913,
-        1458.1871539501396,
-        0.0,
-        9.675997031559846e-14,
-        -5.47460281130139,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ],
-      [
-        298.2290954115797,
-        0.0,
-        688.3175981221913,
-        1400.0001790689194,
-        0.0,
-        8.680375570967948e-14,
-        -5.4588707774929075,
-        0.5313181423399229,
-        -0.8471561782351723,
-        0.0,
-        0.0,
-        -0.5813438999691853,
-        0.0,
-        0.0
-      ]
-    ],
-    "out_of_rail_time": 0.3632465986442917,
-    "apogee_time": 25.884966627110675,
-    "apogee": 4705.619138642921,
-    "parachute_events": [
-      [
-        25.88571428571429,
-        {
-          "name": "calisto_drogue_chute",
-          "cd_s": 1.0,
-          "trigger": "66435143403052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32307340707631347b72293038305a29302174475e357c73637c3023674136303030307d30792b572130332d6d4550443d2423304564282a697e283f7a697e287172697e29492b686d3f2376563e283c3f5a29306d5e62576e4c2a62592a6a4e62366a523d637978376757706939605652422828586d78614462366a763f612423643d62232148345740266849622369354d455e7639326a314658535a2962493755767a5335584a3d287b6c23446f495651677530625a3d697c61264b704b576e585925612423643d62232148346261483844584a76394f4a5a78606356516830674540583056584c56263f6261483844584a7641664f41746433664240685235526567786264585f2a6321263e5f4c6a615531445268296c6c77292a6462393865715740266849622369354d455e754c5456506a7d4062592a6963614139266056607a3142576e583423637978376757706648265575303d78625945577a58626e7a4962642a772a6555794561443278775a5574772d3b5a2a2a6146583e563f4755746734636c23433274557659497c593b49767e576e572a4558627946546c77764c",
-          "sampling_rate": 105,
-          "lag": 1.5,
-          "noise": [
-            0,
-            8.3,
-            0.5
-          ],
-          "signature": {
-            "module": "rocketpy.rocket.parachute",
-            "name": "Parachute"
-          }
-        }
-      ],
-      [
-        158.3904761904762,
-        {
-          "name": "calisto_main_chute",
-          "cd_s": 10.0,
-          "trigger": "664351444f3052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32307340707631347b72293038305a29302174475e447750304c3023674136303030307d30792b572130366855483030303030303030314331706f6a62303936347e313343662330332d6d45437b395a534f386077453139582572697e283f7a697e287172697e29492b686d3f2376563e283c3f5a29306d5e62576e4c2a62592a6a4e62366a523d637978376757706939605652422828586d78614462366a763f612423643d62232148345740266849622369354d455e7639326a307c6d49583e4d50316125704630577062325e472d467c47583e29584d55757c4a265a654d553d612423643d62232148346261483844584a76394f4a5a7860635651683067455e5433485a654d6841583d69363b612b4649554c6d37596f3b31335878357337713d5654704c78343c6e6443706159706c263c473d784c6a615531445268296c6c77292a6462393865715740266849622369354d455e754c5456506a7d4062592a6963614139266056607a3142576e583423637978376757706648265575303d78625945577a58626e7a4962642a772a6555794561443278775a5574772d3b5a2a2a6146583e563f4755746734636c23433274557659497c593b49767e576e572a4558627946546c77764c",
-          "sampling_rate": 105,
-          "lag": 1.5,
-          "noise": [
-            0,
-            8.3,
-            0.5
-          ],
-          "signature": {
-            "module": "rocketpy.rocket.parachute",
-            "name": "Parachute"
-          }
-        }
-      ]
-    ],
-    "impact_state": [
-      0.0,
-      688.3175981221913,
-      1400.0001790689194,
-      0.0,
-      8.680375570967948e-14,
-      -5.4588707774929075,
-      0.5313181423399229,
-      -0.8471561782351723,
-      0.0,
-      0.0,
-      -0.5813438999691853,
-      0.0,
-      0.0
-    ],
-    "impact_velocity": -5.4588707774929075,
-    "x_impact": 0.0,
-    "y_impact": 688.3175981221913,
-    "t_final": 298.2290954115797,
-    "flight_phases": {
-      "list": [
-        {
-          "t": 0,
-          "derivative": {},
-          "callbacks": [],
-          "clear": false,
-          "time_bound": 600,
-          "solver": {
-            "t_old": 0.35146732531401936,
-            "t": 0.44867141823403656,
-            "_fun": {},
-            "y": [
-              0.0,
-              0.5472683577314817,
-              1406.2553059525167,
-              0.0,
-              2.9251503081326184,
-              33.43462101539429,
-              0.9990482215818578,
-              -0.043619387365336,
-              0.0,
-              0.0,
-              0.0,
-              0.0,
-              0.0
-            ],
-            "t_bound": 600,
-            "vectorized": false,
-            "fun": {},
-            "fun_single": {},
-            "fun_vectorized": {},
-            "direction": 1,
-            "n": 13,
-            "status": "finished",
-            "nfev": 118,
-            "njev": 0,
-            "nlu": 0,
-            "_lsoda_solver": {
-              "stiff": 0,
-              "f": {},
-              "jac": null,
-              "f_params": [],
-              "jac_params": [],
-              "_y": [
-                0.0,
-                0.5472683577314817,
-                1406.2553059525167,
-                0.0,
-                2.9251503081326184,
-                33.43462101539429,
-                0.9990482215818578,
-                -0.043619387365336,
-                0.0,
-                0.0,
-                0.0,
-                0.0,
-                0.0
-              ],
-              "_integrator": {
-                "with_jacobian": false,
-                "rtol": 1e-06,
-                "atol": [
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  0.001,
-                  0.001,
-                  0.001
-                ],
-                "mu": null,
-                "ml": null,
-                "max_order_ns": 12,
-                "max_order_s": 5,
-                "nsteps": 500,
-                "max_step": 0,
-                "min_step": 0,
-                "first_step": 0,
-                "ixpr": 0,
-                "max_hnil": 0,
-                "success": 1,
-                "initialized": true,
-                "rwork": [
-                  600.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.09720409292001717,
-                  0.09720409292001717,
-                  0.44867141823403656,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.5472683577314817,
-                  1406.2553059525167,
-                  0.0,
-                  2.9251503081326184,
-                  33.43462101539429,
-                  0.9990482215818578,
-                  -0.043619387365336,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.28433658308914533,
-                  3.2499820162973783,
-                  0.0,
-                  0.7810197914816428,
-                  8.927097066126933,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.03795656259023434,
-                  0.43384549563941294,
-                  0.0,
-                  0.012668740745454411,
-                  0.14480436933066806,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0004079187701520464,
-                  0.004662532878115948,
-                  0.0,
-                  2.5738851909984366e-05,
-                  0.000294196423544483,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1.9381399419399203e-09,
-                  2.2153040846184524e-08,
-                  0.0,
-                  -2.4963221401108626e-07,
-                  -2.853309262307313e-06,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1000.0,
-                  999.6996098428978,
-                  416.07125017533554,
-                  1000.0,
-                  997.8478681424543,
-                  975.9410675026922,
-                  500238.05789371836,
-                  958203.7398946229,
-                  1000000.0,
-                  1000000.0,
-                  1000.0,
-                  1000.0,
-                  1000.0,
-                  0.0,
-                  1.2302420645038392e-05,
-                  0.0001406173113953635,
-                  0.0,
-                  4.7165418802119774e-05,
-                  0.000539103203786695,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  5.12600860209933e-07,
-                  5.859054641473478e-06,
-                  0.0,
-                  1.965225783421657e-06,
-                  2.246263349111229e-05,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0
-                ],
-                "iwork": [
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  500,
-                  0,
-                  12,
-                  5,
-                  0,
-                  49,
-                  118,
-                  0,
-                  3,
-                  3,
-                  0,
-                  308,
-                  33,
-                  1,
-                  1,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0
-                ],
-                "call_args": [
-                  1e-06,
-                  [
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    0.001,
-                    0.001,
-                    0.001
-                  ],
-                  1,
-                  2,
-                  [
-                    600.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.09720409292001717,
-                    0.09720409292001717,
-                    0.44867141823403656,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.5472683577314817,
-                    1406.2553059525167,
-                    0.0,
-                    2.9251503081326184,
-                    33.43462101539429,
-                    0.9990482215818578,
-                    -0.043619387365336,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.28433658308914533,
-                    3.2499820162973783,
-                    0.0,
-                    0.7810197914816428,
-                    8.927097066126933,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.03795656259023434,
-                    0.43384549563941294,
-                    0.0,
-                    0.012668740745454411,
-                    0.14480436933066806,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0004079187701520464,
-                    0.004662532878115948,
-                    0.0,
-                    2.5738851909984366e-05,
-                    0.000294196423544483,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1.9381399419399203e-09,
-                    2.2153040846184524e-08,
-                    0.0,
-                    -2.4963221401108626e-07,
-                    -2.853309262307313e-06,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1000.0,
-                    999.6996098428978,
-                    416.07125017533554,
-                    1000.0,
-                    997.8478681424543,
-                    975.9410675026922,
-                    500238.05789371836,
-                    958203.7398946229,
-                    1000000.0,
-                    1000000.0,
-                    1000.0,
-                    1000.0,
-                    1000.0,
-                    0.0,
-                    1.2302420645038392e-05,
-                    0.0001406173113953635,
-                    0.0,
-                    4.7165418802119774e-05,
-                    0.000539103203786695,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    5.12600860209933e-07,
-                    5.859054641473478e-06,
-                    0.0,
-                    1.965225783421657e-06,
-                    2.246263349111229e-05,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0
-                  ],
-                  [
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    500,
-                    0,
-                    12,
-                    5,
-                    0,
-                    49,
-                    118,
-                    0,
-                    3,
-                    3,
-                    0,
-                    308,
-                    33,
-                    1,
-                    1,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0
-                  ],
-                  2
-                ],
-                "handle": 2,
-                "istate": 2
-              },
-              "t": 0.44867141823403656
-            }
-          },
-          "time_nodes": {
-            "list": [
-              {
-                "t": 0,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "time_bound": 600,
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              },
-              {
-                "t": 0.3632465986442917,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              }
-            ],
-            "signature": {
-              "module": "rocketpy.simulation.flight",
-              "name": "Flight.TimeNodes"
-            }
-          },
-          "signature": {
-            "module": "rocketpy.simulation.flight",
-            "name": "Flight.FlightPhases.FlightPhase"
-          }
-        },
-        {
-          "t": 0.3632465986442917,
-          "derivative": {},
-          "callbacks": [],
-          "clear": true,
-          "time_bound": 600,
-          "solver": {
-            "t_old": 25.706298832086883,
-            "t": 25.893876265877438,
-            "_fun": {},
-            "y": [
-              0.0,
-              587.7554554353032,
-              4705.618757116062,
-              0.0,
-              20.627461687718604,
-              -0.08556189469590371,
-              0.7976915464686066,
-              -0.6030414161147823,
-              0.0,
-              0.0,
-              -0.38314981803656845,
-              0.0,
-              0.0
-            ],
-            "t_bound": 600,
-            "vectorized": false,
-            "fun": {},
-            "fun_single": {},
-            "fun_vectorized": {},
-            "direction": 1.0,
-            "n": 13,
-            "status": "finished",
-            "nfev": 1272,
-            "njev": 58,
-            "nlu": 58,
-            "_lsoda_solver": {
-              "stiff": 0,
-              "f": {},
-              "jac": null,
-              "f_params": [],
-              "jac_params": [],
-              "_y": [
-                0.0,
-                587.7554554353032,
-                4705.618757116062,
-                0.0,
-                20.627461687718604,
-                -0.08556189469590371,
-                0.7976915464686066,
-                -0.6030414161147823,
-                0.0,
-                0.0,
-                -0.38314981803656845,
-                0.0,
-                0.0
-              ],
-              "_integrator": {
-                "with_jacobian": false,
-                "rtol": 1e-06,
-                "atol": [
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  0.001,
-                  0.001,
-                  0.001
-                ],
-                "mu": null,
-                "ml": null,
-                "max_order_ns": 12,
-                "max_order_s": 5,
-                "nsteps": 500,
-                "max_step": 0,
-                "min_step": 0,
-                "first_step": 0.0,
-                "ixpr": 0,
-                "max_hnil": 0,
-                "success": 1,
-                "initialized": true,
-                "rwork": [
-                  600.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.18757743379055383,
-                  0.18757743379055383,
-                  25.893876265877438,
-                  0.0,
-                  0.9671044469204755,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  587.7554554353032,
-                  4705.618757116062,
-                  0.0,
-                  20.627461687718604,
-                  -0.08556189469590371,
-                  0.7976915464686066,
-                  -0.6030414161147823,
-                  0.0,
-                  0.0,
-                  -0.38314981803656845,
-                  0.0,
-                  0.0,
-                  0.0,
-                  3.8692463289952324,
-                  -0.016049480637327532,
-                  0.0,
-                  -0.019993198688709475,
-                  -1.7996187252098288,
-                  -0.021670481523154244,
-                  -0.02866508293636794,
-                  0.0,
-                  0.0,
-                  -0.024827747287691306,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -0.0018797647043272447,
-                  -0.16878073328408996,
-                  0.0,
-                  0.0009798391717518184,
-                  0.0017392472125766255,
-                  -0.0012180630056571285,
-                  -0.0005417755579929988,
-                  0.0,
-                  0.0,
-                  -0.0006068574470791413,
-                  0.0,
-                  0.0,
-                  0.0,
-                  5.789025301314976e-05,
-                  0.00011123012162134977,
-                  0.0,
-                  7.077897841477592e-05,
-                  -5.379159303609232e-06,
-                  -4.090074154348744e-05,
-                  1.4470216037210428e-05,
-                  0.0,
-                  0.0,
-                  9.991188409073489e-06,
-                  0.0,
-                  0.0,
-                  0.0,
-                  2.3264209003366146e-06,
-                  4.416305691262228e-07,
-                  0.0,
-                  2.6689180030483492e-06,
-                  -1.808486394215528e-06,
-                  -6.712620255638881e-07,
-                  1.0415395842449117e-06,
-                  0.0,
-                  0.0,
-                  1.3440808673419702e-06,
-                  0.0,
-                  0.0,
-                  0.0,
-                  2.1652496592634e-05,
-                  1.6377541539893572e-05,
-                  0.0,
-                  2.167925093620249e-05,
-                  4.619666926971646e-06,
-                  -5.912777799895567e-06,
-                  9.895424305689426e-06,
-                  0.0,
-                  0.0,
-                  -4.771935371774456e-07,
-                  0.0,
-                  0.0,
-                  1.4901161193847656e-08,
-                  0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -1.193053473634782e-06,
-                  1.170324718540891e-06,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -1.1484273220013005e-06,
-                  -0.0,
-                  -0.0,
-                  -0.09003716821946584,
-                  -0.0,
-                  -0.0,
-                  1.0034342042928257,
-                  -0.0,
-                  0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.002618718079197889,
-                  -0.0,
-                  -0.0,
-                  -0.09003716871335427,
-                  -0.0,
-                  -0.0,
-                  1.0012758859657431,
-                  -0.0018138898881675967,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  0.0015631574615429208,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0900371684113871,
-                  -0.0,
-                  -0.0011577512766448366,
-                  1.0028445392207315,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.00231876742245789,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  0.04595357776414862,
-                  -0.059234606101934796,
-                  1.0,
-                  0.015125727450636438,
-                  -0.0,
-                  -0.0,
-                  0.05854974960446692,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  0.07014673512708842,
-                  -0.09041982620763833,
-                  -0.015125727605122244,
-                  1.0002287876332476,
-                  -0.0,
-                  -0.0,
-                  0.09023938741811914,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.10844913020988656,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.015125727381862051,
-                  0.0,
-                  0.07472394826352338,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  0.07211721663690654,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  0.015125727381862051,
-                  1.0002287876288305,
-                  0.0,
-                  -0.08165519009913676,
-                  0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  0.0005592830085617024,
-                  -0.0012826769924927915,
-                  -0.02466937538111346,
-                  -0.037283909117343306,
-                  -0.0,
-                  -0.0,
-                  1.0127820453634877,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0013338024479952212,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.03765705169366047,
-                  0.024099784968636167,
-                  -0.0,
-                  1.0122163074507846,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -4.975387730212012e-12,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  0.0,
-                  -0.02466937526655916,
-                  -0.0380301939386233,
-                  -0.0,
-                  -0.03138131848208087,
-                  1.0176926326855387,
-                  1000.0,
-                  631.3592580945759,
-                  175.27052389495663,
-                  1000.0,
-                  979.7693629942418,
-                  998.2871392774261,
-                  549999.281175089,
-                  634948.2350469023,
-                  1000000.0,
-                  1000000.0,
-                  999.6411912146519,
-                  1000.0,
-                  1000.0,
-                  0.0,
-                  20.627452138116084,
-                  -0.08553109011104243,
-                  0.0,
-                  -0.10658107167681896,
-                  -9.594011831497701,
-                  -0.11553367557619172,
-                  -0.152824168172318,
-                  0.0,
-                  0.0,
-                  -0.1323515702088414,
-                  0.0,
-                  0.0,
-                  0.0,
-                  2.0814190343277203e-06,
-                  -1.1081376449068769e-06,
-                  0.0,
-                  1.909920504314198e-06,
-                  -6.16091697225642e-06,
-                  2.3361675248620328e-07,
-                  1.045116587846405e-06,
-                  0.0,
-                  0.0,
-                  3.3629632060220216e-06,
-                  0.0,
-                  0.0
-                ],
-                "iwork": [
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  500,
-                  0,
-                  12,
-                  5,
-                  0,
-                  340,
-                  1272,
-                  58,
-                  4,
-                  4,
-                  0,
-                  308,
-                  33,
-                  2,
-                  2,
-                  1,
-                  2,
-                  3,
-                  4,
-                  5,
-                  6,
-                  7,
-                  8,
-                  9,
-                  10,
-                  11,
-                  12,
-                  13
-                ],
-                "call_args": [
-                  1e-06,
-                  [
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    0.001,
-                    0.001,
-                    0.001
-                  ],
-                  1,
-                  2,
-                  [
-                    600.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.18757743379055383,
-                    0.18757743379055383,
-                    25.893876265877438,
-                    0.0,
-                    0.9671044469204755,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    587.7554554353032,
-                    4705.618757116062,
-                    0.0,
-                    20.627461687718604,
-                    -0.08556189469590371,
-                    0.7976915464686066,
-                    -0.6030414161147823,
-                    0.0,
-                    0.0,
-                    -0.38314981803656845,
-                    0.0,
-                    0.0,
-                    0.0,
-                    3.8692463289952324,
-                    -0.016049480637327532,
-                    0.0,
-                    -0.019993198688709475,
-                    -1.7996187252098288,
-                    -0.021670481523154244,
-                    -0.02866508293636794,
-                    0.0,
-                    0.0,
-                    -0.024827747287691306,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -0.0018797647043272447,
-                    -0.16878073328408996,
-                    0.0,
-                    0.0009798391717518184,
-                    0.0017392472125766255,
-                    -0.0012180630056571285,
-                    -0.0005417755579929988,
-                    0.0,
-                    0.0,
-                    -0.0006068574470791413,
-                    0.0,
-                    0.0,
-                    0.0,
-                    5.789025301314976e-05,
-                    0.00011123012162134977,
-                    0.0,
-                    7.077897841477592e-05,
-                    -5.379159303609232e-06,
-                    -4.090074154348744e-05,
-                    1.4470216037210428e-05,
-                    0.0,
-                    0.0,
-                    9.991188409073489e-06,
-                    0.0,
-                    0.0,
-                    0.0,
-                    2.3264209003366146e-06,
-                    4.416305691262228e-07,
-                    0.0,
-                    2.6689180030483492e-06,
-                    -1.808486394215528e-06,
-                    -6.712620255638881e-07,
-                    1.0415395842449117e-06,
-                    0.0,
-                    0.0,
-                    1.3440808673419702e-06,
-                    0.0,
-                    0.0,
-                    0.0,
-                    2.1652496592634e-05,
-                    1.6377541539893572e-05,
-                    0.0,
-                    2.167925093620249e-05,
-                    4.619666926971646e-06,
-                    -5.912777799895567e-06,
-                    9.895424305689426e-06,
-                    0.0,
-                    0.0,
-                    -4.771935371774456e-07,
-                    0.0,
-                    0.0,
-                    1.4901161193847656e-08,
-                    0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -1.193053473634782e-06,
-                    1.170324718540891e-06,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -1.1484273220013005e-06,
-                    -0.0,
-                    -0.0,
-                    -0.09003716821946584,
-                    -0.0,
-                    -0.0,
-                    1.0034342042928257,
-                    -0.0,
-                    0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.002618718079197889,
-                    -0.0,
-                    -0.0,
-                    -0.09003716871335427,
-                    -0.0,
-                    -0.0,
-                    1.0012758859657431,
-                    -0.0018138898881675967,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    0.0015631574615429208,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0900371684113871,
-                    -0.0,
-                    -0.0011577512766448366,
-                    1.0028445392207315,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.00231876742245789,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    0.04595357776414862,
-                    -0.059234606101934796,
-                    1.0,
-                    0.015125727450636438,
-                    -0.0,
-                    -0.0,
-                    0.05854974960446692,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    0.07014673512708842,
-                    -0.09041982620763833,
-                    -0.015125727605122244,
-                    1.0002287876332476,
-                    -0.0,
-                    -0.0,
-                    0.09023938741811914,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.10844913020988656,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.015125727381862051,
-                    0.0,
-                    0.07472394826352338,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    0.07211721663690654,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    0.015125727381862051,
-                    1.0002287876288305,
-                    0.0,
-                    -0.08165519009913676,
-                    0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    0.0005592830085617024,
-                    -0.0012826769924927915,
-                    -0.02466937538111346,
-                    -0.037283909117343306,
-                    -0.0,
-                    -0.0,
-                    1.0127820453634877,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0013338024479952212,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.03765705169366047,
-                    0.024099784968636167,
-                    -0.0,
-                    1.0122163074507846,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -4.975387730212012e-12,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    0.0,
-                    -0.02466937526655916,
-                    -0.0380301939386233,
-                    -0.0,
-                    -0.03138131848208087,
-                    1.0176926326855387,
-                    1000.0,
-                    631.3592580945759,
-                    175.27052389495663,
-                    1000.0,
-                    979.7693629942418,
-                    998.2871392774261,
-                    549999.281175089,
-                    634948.2350469023,
-                    1000000.0,
-                    1000000.0,
-                    999.6411912146519,
-                    1000.0,
-                    1000.0,
-                    0.0,
-                    20.627452138116084,
-                    -0.08553109011104243,
-                    0.0,
-                    -0.10658107167681896,
-                    -9.594011831497701,
-                    -0.11553367557619172,
-                    -0.152824168172318,
-                    0.0,
-                    0.0,
-                    -0.1323515702088414,
-                    0.0,
-                    0.0,
-                    0.0,
-                    2.0814190343277203e-06,
-                    -1.1081376449068769e-06,
-                    0.0,
-                    1.909920504314198e-06,
-                    -6.16091697225642e-06,
-                    2.3361675248620328e-07,
-                    1.045116587846405e-06,
-                    0.0,
-                    0.0,
-                    3.3629632060220216e-06,
-                    0.0,
-                    0.0
-                  ],
-                  [
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    500,
-                    0,
-                    12,
-                    5,
-                    0,
-                    340,
-                    1272,
-                    58,
-                    4,
-                    4,
-                    0,
-                    308,
-                    33,
-                    2,
-                    2,
-                    1,
-                    2,
-                    3,
-                    4,
-                    5,
-                    6,
-                    7,
-                    8,
-                    9,
-                    10,
-                    11,
-                    12,
-                    13
-                  ],
-                  2
-                ],
-                "handle": 3,
-                "istate": 2
-              },
-              "t": 25.893876265877438
-            }
-          },
-          "time_nodes": {
-            "list": [
-              {
-                "t": 0.3632465986442917,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "time_bound": 600,
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              },
-              {
-                "t": 25.88571428571429,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              }
-            ],
-            "signature": {
-              "module": "rocketpy.simulation.flight",
-              "name": "Flight.TimeNodes"
-            }
-          },
-          "signature": {
-            "module": "rocketpy.simulation.flight",
-            "name": "Flight.FlightPhases.FlightPhase"
-          }
-        },
-        {
-          "t": 25.88571428571429,
-          "derivative": {},
-          "callbacks": [],
-          "clear": true,
-          "time_bound": 27.38571428571429,
-          "solver": {
-            "t_old": 27.294095997667696,
-            "t": 27.38571428571429,
-            "_fun": {},
-            "y": [
-              0.0,
-              618.4531547196009,
-              4694.8525029610055,
-              0.0,
-              20.558807275124913,
-              -14.344033789049263,
-              0.5313181423399229,
-              -0.8471561782351723,
-              0.0,
-              0.0,
-              -0.5813438999691853,
-              0.0,
-              0.0
-            ],
-            "t_bound": 27.38571428571429,
-            "vectorized": false,
-            "fun": {},
-            "fun_single": {},
-            "fun_vectorized": {},
-            "direction": 1.0,
-            "n": 13,
-            "status": "finished",
-            "nfev": 33,
-            "njev": 0,
-            "nlu": 0,
-            "_lsoda_solver": {
-              "stiff": 0,
-              "f": {},
-              "jac": null,
-              "f_params": [],
-              "jac_params": [],
-              "_y": [
-                0.0,
-                618.4531547196009,
-                4694.8525029610055,
-                0.0,
-                20.558807275124913,
-                -14.344033789049263,
-                0.5313181423399229,
-                -0.8471561782351723,
-                0.0,
-                0.0,
-                -0.5813438999691853,
-                0.0,
-                0.0
-              ],
-              "_integrator": {
-                "with_jacobian": false,
-                "rtol": 1e-06,
-                "atol": [
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  0.001,
-                  0.001,
-                  0.001
-                ],
-                "mu": null,
-                "ml": null,
-                "max_order_ns": 12,
-                "max_order_s": 5,
-                "nsteps": 500,
-                "max_step": 0,
-                "min_step": 0,
-                "first_step": 0.0,
-                "ixpr": 0,
-                "max_hnil": 0,
-                "success": 1,
-                "initialized": true,
-                "rwork": [
-                  27.38571428571429,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.09161828804659312,
-                  0.09161828804659312,
-                  27.38571428571429,
-                  0.0,
-                  25.88571428571429,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  618.4531547196009,
-                  4694.8525029610055,
-                  0.0,
-                  20.558807275124913,
-                  -14.344033789049263,
-                  0.5313181423399229,
-                  -0.8471561782351723,
-                  0.0,
-                  0.0,
-                  -0.5813438999691853,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1.8835627244251862,
-                  -1.3141758272854163,
-                  0.0,
-                  0.0005248356364171887,
-                  -0.8791182862138874,
-                  -0.02256049959986821,
-                  -0.014149460998077215,
-                  0.0,
-                  0.0,
-                  -0.007390647373666418,
-                  0.0,
-                  0.0,
-                  0.0,
-                  2.313196633959577e-05,
-                  -0.04027217565940808,
-                  0.0,
-                  -8.765768534440464e-05,
-                  -0.0008120863525235065,
-                  -0.00033143526313081666,
-                  0.00021035928157611827,
-                  0.0,
-                  0.0,
-                  0.0007902989781031212,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -3.255715277304555e-06,
-                  -2.5368304815138908e-05,
-                  0.0,
-                  -5.607528185796839e-05,
-                  -3.9258420045191544e-05,
-                  1.0788489411537073e-05,
-                  1.1874692351191332e-05,
-                  0.0,
-                  0.0,
-                  4.433717760734925e-05,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -1.1959008638434256e-06,
-                  -1.0526047355966644e-06,
-                  0.0,
-                  -2.6845568403092723e-06,
-                  5.950054338601654e-07,
-                  6.623645421272742e-07,
-                  6.073648837128751e-08,
-                  0.0,
-                  0.0,
-                  8.70951814376991e-07,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -6.476290632262405e-05,
-                  -5.2201541369090165e-05,
-                  0.0,
-                  -0.00015544966177907164,
-                  3.9699821478889064e-05,
-                  3.1572129400886384e-05,
-                  -8.247043053084824e-07,
-                  0.0,
-                  0.0,
-                  3.13703231116097e-05,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1000.0,
-                  618.5938355937503,
-                  175.55790099220533,
-                  1000.0,
-                  979.8558796527869,
-                  986.7132277898357,
-                  643692.3923597733,
-                  545610.83659788,
-                  1000000.0,
-                  1000000.0,
-                  999.4271219575285,
-                  1000.0,
-                  1000.0,
-                  0.0,
-                  -1.751685152751037e-05,
-                  -3.1117158567628422e-06,
-                  0.0,
-                  -1.993069394421289e-05,
-                  2.7015780868056005e-05,
-                  5.963842481762627e-06,
-                  -2.672273150709087e-06,
-                  0.0,
-                  0.0,
-                  -3.540457421827639e-07,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -4.6225024864263484e-07,
-                  -8.211472399790835e-08,
-                  0.0,
-                  -5.259488679722848e-07,
-                  7.129164395737003e-07,
-                  1.5737917660206935e-07,
-                  -7.051831925482314e-08,
-                  0.0,
-                  0.0,
-                  -9.342873752045161e-09,
-                  0.0,
-                  0.0
-                ],
-                "iwork": [
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  500,
-                  0,
-                  12,
-                  5,
-                  0,
-                  15,
-                  33,
-                  0,
-                  4,
-                  4,
-                  0,
-                  308,
-                  33,
-                  1,
-                  1,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0
-                ],
-                "call_args": [
-                  1e-06,
-                  [
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    0.001,
-                    0.001,
-                    0.001
-                  ],
-                  1,
-                  2,
-                  [
-                    27.38571428571429,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.09161828804659312,
-                    0.09161828804659312,
-                    27.38571428571429,
-                    0.0,
-                    25.88571428571429,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    618.4531547196009,
-                    4694.8525029610055,
-                    0.0,
-                    20.558807275124913,
-                    -14.344033789049263,
-                    0.5313181423399229,
-                    -0.8471561782351723,
-                    0.0,
-                    0.0,
-                    -0.5813438999691853,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1.8835627244251862,
-                    -1.3141758272854163,
-                    0.0,
-                    0.0005248356364171887,
-                    -0.8791182862138874,
-                    -0.02256049959986821,
-                    -0.014149460998077215,
-                    0.0,
-                    0.0,
-                    -0.007390647373666418,
-                    0.0,
-                    0.0,
-                    0.0,
-                    2.313196633959577e-05,
-                    -0.04027217565940808,
-                    0.0,
-                    -8.765768534440464e-05,
-                    -0.0008120863525235065,
-                    -0.00033143526313081666,
-                    0.00021035928157611827,
-                    0.0,
-                    0.0,
-                    0.0007902989781031212,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -3.255715277304555e-06,
-                    -2.5368304815138908e-05,
-                    0.0,
-                    -5.607528185796839e-05,
-                    -3.9258420045191544e-05,
-                    1.0788489411537073e-05,
-                    1.1874692351191332e-05,
-                    0.0,
-                    0.0,
-                    4.433717760734925e-05,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -1.1959008638434256e-06,
-                    -1.0526047355966644e-06,
-                    0.0,
-                    -2.6845568403092723e-06,
-                    5.950054338601654e-07,
-                    6.623645421272742e-07,
-                    6.073648837128751e-08,
-                    0.0,
-                    0.0,
-                    8.70951814376991e-07,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -6.476290632262405e-05,
-                    -5.2201541369090165e-05,
-                    0.0,
-                    -0.00015544966177907164,
-                    3.9699821478889064e-05,
-                    3.1572129400886384e-05,
-                    -8.247043053084824e-07,
-                    0.0,
-                    0.0,
-                    3.13703231116097e-05,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1000.0,
-                    618.5938355937503,
-                    175.55790099220533,
-                    1000.0,
-                    979.8558796527869,
-                    986.7132277898357,
-                    643692.3923597733,
-                    545610.83659788,
-                    1000000.0,
-                    1000000.0,
-                    999.4271219575285,
-                    1000.0,
-                    1000.0,
-                    0.0,
-                    -1.751685152751037e-05,
-                    -3.1117158567628422e-06,
-                    0.0,
-                    -1.993069394421289e-05,
-                    2.7015780868056005e-05,
-                    5.963842481762627e-06,
-                    -2.672273150709087e-06,
-                    0.0,
-                    0.0,
-                    -3.540457421827639e-07,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -4.6225024864263484e-07,
-                    -8.211472399790835e-08,
-                    0.0,
-                    -5.259488679722848e-07,
-                    7.129164395737003e-07,
-                    1.5737917660206935e-07,
-                    -7.051831925482314e-08,
-                    0.0,
-                    0.0,
-                    -9.342873752045161e-09,
-                    0.0,
-                    0.0
-                  ],
-                  [
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    500,
-                    0,
-                    12,
-                    5,
-                    0,
-                    15,
-                    33,
-                    0,
-                    4,
-                    4,
-                    0,
-                    308,
-                    33,
-                    1,
-                    1,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0
-                  ],
-                  2
-                ],
-                "handle": 4,
-                "istate": 2
-              },
-              "t": 27.38571428571429
-            }
-          },
-          "time_nodes": {
-            "list": [
-              {
-                "t": 25.88571428571429,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "time_bound": 27.38571428571429,
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              },
-              {
-                "t": 27.38571428571429,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              }
-            ],
-            "signature": {
-              "module": "rocketpy.simulation.flight",
-              "name": "Flight.TimeNodes"
-            }
-          },
-          "signature": {
-            "module": "rocketpy.simulation.flight",
-            "name": "Flight.FlightPhases.FlightPhase"
-          }
-        },
-        {
-          "t": 27.38571428571429,
-          "derivative": {},
-          "callbacks": [
-            {}
-          ],
-          "clear": false,
-          "time_bound": 600,
-          "solver": {
-            "t_old": 148.19986688508203,
-            "t": 158.68907991581068,
-            "_fun": {},
-            "y": [
-              0.0,
-              688.3175981613348,
-              2195.821058313658,
-              0.0,
-              -2.584029132655404e-08,
-              -17.988030382966176,
-              0.5313181423399229,
-              -0.8471561782351723,
-              0.0,
-              0.0,
-              -0.5813438999691853,
-              0.0,
-              0.0
-            ],
-            "t_bound": 600,
-            "vectorized": false,
-            "fun": {},
-            "fun_single": {},
-            "fun_vectorized": {},
-            "direction": 1.0,
-            "n": 13,
-            "status": "finished",
-            "nfev": 173,
-            "njev": 2,
-            "nlu": 2,
-            "_lsoda_solver": {
-              "stiff": 0,
-              "f": {},
-              "jac": null,
-              "f_params": [],
-              "jac_params": [],
-              "_y": [
-                0.0,
-                688.3175981613348,
-                2195.821058313658,
-                0.0,
-                -2.584029132655404e-08,
-                -17.988030382966176,
-                0.5313181423399229,
-                -0.8471561782351723,
-                0.0,
-                0.0,
-                -0.5813438999691853,
-                0.0,
-                0.0
-              ],
-              "_integrator": {
-                "with_jacobian": false,
-                "rtol": 1e-06,
-                "atol": [
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  0.001,
-                  0.001,
-                  0.001
-                ],
-                "mu": null,
-                "ml": null,
-                "max_order_ns": 12,
-                "max_order_s": 5,
-                "nsteps": 500,
-                "max_step": 0,
-                "min_step": 0,
-                "first_step": 0.0,
-                "ixpr": 0,
-                "max_hnil": 0,
-                "success": 1,
-                "initialized": true,
-                "rwork": [
-                  600.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  10.489213030728653,
-                  10.489213030728653,
-                  158.68907991581068,
-                  0.0,
-                  98.50866761324593,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  688.3175981613348,
-                  2195.821058313658,
-                  0.0,
-                  -2.584029132655404e-08,
-                  -17.988030382966176,
-                  0.5313181423399229,
-                  -0.8471561782351723,
-                  0.0,
-                  0.0,
-                  -0.5813438999691853,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -2.710443205003147e-07,
-                  -188.68028269015173,
-                  0.0,
-                  7.967988025680061e-08,
-                  0.1719181732193172,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -1.962002822110877e-06,
-                  0.9008569139334731,
-                  0.0,
-                  5.633854868163226e-07,
-                  -0.0019889444943055677,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -4.967857117070606e-07,
-                  -0.007333872970780852,
-                  0.0,
-                  1.438058369528136e-07,
-                  2.659641233701999e-05,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -8.885693353441399e-05,
-                  4.80569661357761e-05,
-                  -0.0,
-                  2.5737894214940343e-05,
-                  -2.7896530394856733e-05,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -1.2645139551515992e-05,
-                  0.007419732741084269,
-                  0.0,
-                  3.6026742345059385e-06,
-                  1.9852137091039766e-05,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1.4901161193847656e-08,
-                  0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -1.0989801583874973e-10,
-                  0.003052767813261618,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -5.721388925851992,
-                  -0.0,
-                  -0.0,
-                  2.6819369682637033,
-                  -0.0,
-                  0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -5.721388925853748,
-                  -0.0,
-                  -0.0,
-                  2.681936968265492,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -5.721388958854142,
-                  -0.0,
-                  -1.1302863523784885e-07,
-                  4.381339991528693,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  1000.0,
-                  592.3056193907871,
-                  295.3852379186307,
-                  1000.0,
-                  999.9999996859405,
-                  982.1620088576003,
-                  653032.1638271426,
-                  541372.739231736,
-                  1000000.0,
-                  1000000.0,
-                  999.4189938644035,
-                  1000.0,
-                  1000.0,
-                  0.0,
-                  -2.5840497116732232e-08,
-                  -17.98803038296653,
-                  -0.0,
-                  7.596424497036255e-09,
-                  0.016389997297020745,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1.0450096952155818e-06,
-                  0.0004913900998799308,
-                  0.0,
-                  -3.0698433345342924e-07,
-                  -1.6821975580222384e-06,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0
-                ],
-                "iwork": [
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  500,
-                  0,
-                  12,
-                  5,
-                  0,
-                  73,
-                  173,
-                  2,
-                  3,
-                  3,
-                  0,
-                  308,
-                  33,
-                  2,
-                  2,
-                  1,
-                  2,
-                  3,
-                  4,
-                  5,
-                  6,
-                  7,
-                  8,
-                  9,
-                  10,
-                  11,
-                  12,
-                  13
-                ],
-                "call_args": [
-                  1e-06,
-                  [
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    0.001,
-                    0.001,
-                    0.001
-                  ],
-                  1,
-                  2,
-                  [
-                    600.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    10.489213030728653,
-                    10.489213030728653,
-                    158.68907991581068,
-                    0.0,
-                    98.50866761324593,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    688.3175981613348,
-                    2195.821058313658,
-                    0.0,
-                    -2.584029132655404e-08,
-                    -17.988030382966176,
-                    0.5313181423399229,
-                    -0.8471561782351723,
-                    0.0,
-                    0.0,
-                    -0.5813438999691853,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -2.710443205003147e-07,
-                    -188.68028269015173,
-                    0.0,
-                    7.967988025680061e-08,
-                    0.1719181732193172,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -1.962002822110877e-06,
-                    0.9008569139334731,
-                    0.0,
-                    5.633854868163226e-07,
-                    -0.0019889444943055677,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -4.967857117070606e-07,
-                    -0.007333872970780852,
-                    0.0,
-                    1.438058369528136e-07,
-                    2.659641233701999e-05,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -8.885693353441399e-05,
-                    4.80569661357761e-05,
-                    -0.0,
-                    2.5737894214940343e-05,
-                    -2.7896530394856733e-05,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -1.2645139551515992e-05,
-                    0.007419732741084269,
-                    0.0,
-                    3.6026742345059385e-06,
-                    1.9852137091039766e-05,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1.4901161193847656e-08,
-                    0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -1.0989801583874973e-10,
-                    0.003052767813261618,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -5.721388925851992,
-                    -0.0,
-                    -0.0,
-                    2.6819369682637033,
-                    -0.0,
-                    0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -5.721388925853748,
-                    -0.0,
-                    -0.0,
-                    2.681936968265492,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -5.721388958854142,
-                    -0.0,
-                    -1.1302863523784885e-07,
-                    4.381339991528693,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    1000.0,
-                    592.3056193907871,
-                    295.3852379186307,
-                    1000.0,
-                    999.9999996859405,
-                    982.1620088576003,
-                    653032.1638271426,
-                    541372.739231736,
-                    1000000.0,
-                    1000000.0,
-                    999.4189938644035,
-                    1000.0,
-                    1000.0,
-                    0.0,
-                    -2.5840497116732232e-08,
-                    -17.98803038296653,
-                    -0.0,
-                    7.596424497036255e-09,
-                    0.016389997297020745,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1.0450096952155818e-06,
-                    0.0004913900998799308,
-                    0.0,
-                    -3.0698433345342924e-07,
-                    -1.6821975580222384e-06,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0
-                  ],
-                  [
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    500,
-                    0,
-                    12,
-                    5,
-                    0,
-                    73,
-                    173,
-                    2,
-                    3,
-                    3,
-                    0,
-                    308,
-                    33,
-                    2,
-                    2,
-                    1,
-                    2,
-                    3,
-                    4,
-                    5,
-                    6,
-                    7,
-                    8,
-                    9,
-                    10,
-                    11,
-                    12,
-                    13
-                  ],
-                  2
-                ],
-                "handle": 5,
-                "istate": 2
-              },
-              "t": 158.68907991581068
-            }
-          },
-          "time_nodes": {
-            "list": [
-              {
-                "t": 27.38571428571429,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "time_bound": 600,
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              },
-              {
-                "t": 158.3904761904762,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              }
-            ],
-            "signature": {
-              "module": "rocketpy.simulation.flight",
-              "name": "Flight.TimeNodes"
-            }
-          },
-          "signature": {
-            "module": "rocketpy.simulation.flight",
-            "name": "Flight.FlightPhases.FlightPhase"
-          }
-        },
-        {
-          "t": 158.3904761904762,
-          "derivative": {},
-          "callbacks": [],
-          "clear": true,
-          "time_bound": 159.8904761904762,
-          "solver": {
-            "t_old": 158.62832172712518,
-            "t": 159.8904761904762,
-            "_fun": {},
-            "y": [
-              0.0,
-              688.3175981337685,
-              2174.222347147565,
-              0.0,
-              -1.7747078498098196e-08,
-              -17.968367264765266,
-              0.5313181423399229,
-              -0.8471561782351723,
-              0.0,
-              0.0,
-              -0.5813438999691853,
-              0.0,
-              0.0
-            ],
-            "t_bound": 159.8904761904762,
-            "vectorized": false,
-            "fun": {},
-            "fun_single": {},
-            "fun_vectorized": {},
-            "direction": 1.0,
-            "n": 13,
-            "status": "finished",
-            "nfev": 7,
-            "njev": 0,
-            "nlu": 0,
-            "_lsoda_solver": {
-              "stiff": 0,
-              "f": {},
-              "jac": null,
-              "f_params": [],
-              "jac_params": [],
-              "_y": [
-                0.0,
-                688.3175981337685,
-                2174.222347147565,
-                0.0,
-                -1.7747078498098196e-08,
-                -17.968367264765266,
-                0.5313181423399229,
-                -0.8471561782351723,
-                0.0,
-                0.0,
-                -0.5813438999691853,
-                0.0,
-                0.0
-              ],
-              "_integrator": {
-                "with_jacobian": false,
-                "rtol": 1e-06,
-                "atol": [
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  0.001,
-                  0.001,
-                  0.001
-                ],
-                "mu": null,
-                "ml": null,
-                "max_order_ns": 12,
-                "max_order_s": 5,
-                "nsteps": 500,
-                "max_step": 0,
-                "min_step": 0,
-                "first_step": 0.0,
-                "ixpr": 0,
-                "max_hnil": 0,
-                "success": 1,
-                "initialized": true,
-                "rwork": [
-                  159.8904761904762,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1.2621544633510087,
-                  1.2621544633510087,
-                  159.8904761904762,
-                  0.0,
-                  158.3904761904762,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  688.3175981337685,
-                  2174.222347147565,
-                  0.0,
-                  -1.7747078498098196e-08,
-                  -17.968367264765266,
-                  0.5313181423399229,
-                  -0.8471561782351723,
-                  0.0,
-                  0.0,
-                  -0.5813438999691853,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -2.232242171080785e-08,
-                  -22.678855104487763,
-                  0.0,
-                  6.562724090891909e-09,
-                  0.020629024557291317,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  5.132964715468069e-09,
-                  0.013037631014758955,
-                  -0.0,
-                  -1.5086764150065946e-09,
-                  -3.0406599529018915e-05,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1.1095776770629226e-10,
-                  0.00023189352491037596,
-                  0.0,
-                  -3.2610578629065856e-11,
-                  -5.356075556393371e-07,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1000.0,
-                  592.3056189718791,
-                  312.80163462770173,
-                  1000.0,
-                  999.9999999741815,
-                  982.3288599148176,
-                  653032.1638271426,
-                  541372.739231736,
-                  1000000.0,
-                  1000000.0,
-                  999.4189938644035,
-                  1000.0,
-                  1000.0,
-                  0.0,
-                  -1.826121603538687e-09,
-                  -3.8508223255462326e-05,
-                  -0.0,
-                  5.365415575709992e-10,
-                  -4.009369719733258e-07,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -1.5217680029489059e-10,
-                  -3.209018604621861e-06,
-                  -0.0,
-                  4.471179646424994e-11,
-                  -3.3411414331110486e-08,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0
-                ],
-                "iwork": [
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  500,
-                  0,
-                  12,
-                  5,
-                  0,
-                  3,
-                  7,
-                  0,
-                  2,
-                  2,
-                  0,
-                  308,
-                  33,
-                  1,
-                  1,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  0
-                ],
-                "call_args": [
-                  1e-06,
-                  [
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    0.001,
-                    0.001,
-                    0.001
-                  ],
-                  1,
-                  2,
-                  [
-                    159.8904761904762,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1.2621544633510087,
-                    1.2621544633510087,
-                    159.8904761904762,
-                    0.0,
-                    158.3904761904762,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    688.3175981337685,
-                    2174.222347147565,
-                    0.0,
-                    -1.7747078498098196e-08,
-                    -17.968367264765266,
-                    0.5313181423399229,
-                    -0.8471561782351723,
-                    0.0,
-                    0.0,
-                    -0.5813438999691853,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -2.232242171080785e-08,
-                    -22.678855104487763,
-                    0.0,
-                    6.562724090891909e-09,
-                    0.020629024557291317,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    5.132964715468069e-09,
-                    0.013037631014758955,
-                    -0.0,
-                    -1.5086764150065946e-09,
-                    -3.0406599529018915e-05,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1.1095776770629226e-10,
-                    0.00023189352491037596,
-                    0.0,
-                    -3.2610578629065856e-11,
-                    -5.356075556393371e-07,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1000.0,
-                    592.3056189718791,
-                    312.80163462770173,
-                    1000.0,
-                    999.9999999741815,
-                    982.3288599148176,
-                    653032.1638271426,
-                    541372.739231736,
-                    1000000.0,
-                    1000000.0,
-                    999.4189938644035,
-                    1000.0,
-                    1000.0,
-                    0.0,
-                    -1.826121603538687e-09,
-                    -3.8508223255462326e-05,
-                    -0.0,
-                    5.365415575709992e-10,
-                    -4.009369719733258e-07,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -1.5217680029489059e-10,
-                    -3.209018604621861e-06,
-                    -0.0,
-                    4.471179646424994e-11,
-                    -3.3411414331110486e-08,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0
-                  ],
-                  [
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    500,
-                    0,
-                    12,
-                    5,
-                    0,
-                    3,
-                    7,
-                    0,
-                    2,
-                    2,
-                    0,
-                    308,
-                    33,
-                    1,
-                    1,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    0
-                  ],
-                  2
-                ],
-                "handle": 6,
-                "istate": 2
-              },
-              "t": 159.8904761904762
-            }
-          },
-          "time_nodes": {
-            "list": [
-              {
-                "t": 158.3904761904762,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "time_bound": 159.8904761904762,
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              },
-              {
-                "t": 159.8904761904762,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              }
-            ],
-            "signature": {
-              "module": "rocketpy.simulation.flight",
-              "name": "Flight.TimeNodes"
-            }
-          },
-          "signature": {
-            "module": "rocketpy.simulation.flight",
-            "name": "Flight.FlightPhases.FlightPhase"
-          }
-        },
-        {
-          "t": 159.8904761904762,
-          "derivative": {},
-          "callbacks": [
-            {}
-          ],
-          "clear": false,
-          "time_bound": 600,
-          "solver": {
-            "t_old": 287.5851723958026,
-            "t": 313.2507737564009,
-            "_fun": {},
-            "y": [
-              0.0,
-              688.3175981221913,
-              1318.164720195981,
-              0.0,
-              7.701877374033495e-14,
-              -5.436850649648441,
-              0.5313181423399229,
-              -0.8471561782351723,
-              0.0,
-              0.0,
-              -0.5813438999691853,
-              0.0,
-              0.0
-            ],
-            "t_bound": 600,
-            "vectorized": false,
-            "fun": {},
-            "fun_single": {},
-            "fun_vectorized": {},
-            "direction": 1.0,
-            "n": 13,
-            "status": "finished",
-            "nfev": 152,
-            "njev": 3,
-            "nlu": 3,
-            "_lsoda_solver": {
-              "stiff": 0,
-              "f": {},
-              "jac": null,
-              "f_params": [],
-              "jac_params": [],
-              "_y": [
-                0.0,
-                688.3175981221913,
-                1318.164720195981,
-                0.0,
-                7.701877374033495e-14,
-                -5.436850649648441,
-                0.5313181423399229,
-                -0.8471561782351723,
-                0.0,
-                0.0,
-                -0.5813438999691853,
-                0.0,
-                0.0
-              ],
-              "_integrator": {
-                "with_jacobian": false,
-                "rtol": 1e-06,
-                "atol": [
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  0.001,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  1e-06,
-                  0.001,
-                  0.001,
-                  0.001
-                ],
-                "mu": null,
-                "ml": null,
-                "max_order_ns": 12,
-                "max_order_s": 5,
-                "nsteps": 500,
-                "max_step": 0,
-                "min_step": 0,
-                "first_step": 0.0,
-                "ixpr": 0,
-                "max_hnil": 0,
-                "success": 1,
-                "initialized": true,
-                "rwork": [
-                  600.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  25.665601360598327,
-                  25.665601360598327,
-                  313.2507737564009,
-                  0.0,
-                  166.34184757413777,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  688.3175981221913,
-                  1318.164720195981,
-                  0.0,
-                  7.701877374033495e-14,
-                  -5.436850649648441,
-                  0.5313181423399229,
-                  -0.8471561782351723,
-                  0.0,
-                  0.0,
-                  -0.5813438999691853,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1.8656739043533945e-14,
-                  -139.54020412183155,
-                  0.0,
-                  -5.278530068790441e-15,
-                  0.03744643248574814,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -2.8048392277564234e-14,
-                  0.4790648582701719,
-                  0.0,
-                  2.6719381781286695e-14,
-                  -0.00029574661830512075,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -1.3446916098587212e-14,
-                  -0.0031647740569027303,
-                  0.0,
-                  1.2256715274813764e-14,
-                  9.982548896178435e-06,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  5.790922673628834e-14,
-                  2.24461002423768e-05,
-                  -0.0,
-                  -6.216059805971603e-14,
-                  -4.273998549507323e-05,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -8.097039161778226e-13,
-                  0.006579962987408673,
-                  0.0,
-                  7.464073392628725e-13,
-                  6.20168050495771e-05,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  1.4901161193847656e-08,
-                  0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -3.1940102090748562e-15,
-                  0.005944464509442278,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -11.376084047604522,
-                  -0.0,
-                  -0.0,
-                  11.570432088287202,
-                  -0.0,
-                  0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -11.376084047604522,
-                  -0.0,
-                  -0.0,
-                  11.5704320882872,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -11.376084095507638,
-                  -0.0,
-                  -1.0724800752568974e-11,
-                  22.208488828763688,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  -0.0,
-                  1.0,
-                  1000.0,
-                  592.3056189855728,
-                  406.80385071294023,
-                  1000.0,
-                  1000.0,
-                  994.555205277195,
-                  653032.1638271426,
-                  541372.739231736,
-                  1000000.0,
-                  1000000.0,
-                  999.4189938644035,
-                  1000.0,
-                  1000.0,
-                  0.0,
-                  -3.301125022212318e-13,
-                  -5.436884476996649,
-                  -0.0,
-                  3.0717712661766863e-13,
-                  0.0015116199751028317,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  -1.104141703878849e-13,
-                  0.0008972676801011826,
-                  0.0,
-                  1.0178281899039169e-13,
-                  8.45683705221506e-06,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0,
-                  0.0
-                ],
-                "iwork": [
-                  0,
-                  0,
-                  0,
-                  0,
-                  0,
-                  500,
-                  0,
-                  12,
-                  5,
-                  0,
-                  59,
-                  152,
-                  3,
-                  3,
-                  3,
-                  0,
-                  308,
-                  33,
-                  2,
-                  2,
-                  1,
-                  2,
-                  3,
-                  4,
-                  5,
-                  6,
-                  7,
-                  8,
-                  9,
-                  10,
-                  11,
-                  12,
-                  13
-                ],
-                "call_args": [
-                  1e-06,
-                  [
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    0.001,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    1e-06,
-                    0.001,
-                    0.001,
-                    0.001
-                  ],
-                  1,
-                  2,
-                  [
-                    600.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    25.665601360598327,
-                    25.665601360598327,
-                    313.2507737564009,
-                    0.0,
-                    166.34184757413777,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    688.3175981221913,
-                    1318.164720195981,
-                    0.0,
-                    7.701877374033495e-14,
-                    -5.436850649648441,
-                    0.5313181423399229,
-                    -0.8471561782351723,
-                    0.0,
-                    0.0,
-                    -0.5813438999691853,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1.8656739043533945e-14,
-                    -139.54020412183155,
-                    0.0,
-                    -5.278530068790441e-15,
-                    0.03744643248574814,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -2.8048392277564234e-14,
-                    0.4790648582701719,
-                    0.0,
-                    2.6719381781286695e-14,
-                    -0.00029574661830512075,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -1.3446916098587212e-14,
-                    -0.0031647740569027303,
-                    0.0,
-                    1.2256715274813764e-14,
-                    9.982548896178435e-06,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    5.790922673628834e-14,
-                    2.24461002423768e-05,
-                    -0.0,
-                    -6.216059805971603e-14,
-                    -4.273998549507323e-05,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -8.097039161778226e-13,
-                    0.006579962987408673,
-                    0.0,
-                    7.464073392628725e-13,
-                    6.20168050495771e-05,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    1.4901161193847656e-08,
-                    0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -3.1940102090748562e-15,
-                    0.005944464509442278,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -11.376084047604522,
-                    -0.0,
-                    -0.0,
-                    11.570432088287202,
-                    -0.0,
-                    0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -11.376084047604522,
-                    -0.0,
-                    -0.0,
-                    11.5704320882872,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -11.376084095507638,
-                    -0.0,
-                    -1.0724800752568974e-11,
-                    22.208488828763688,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    -0.0,
-                    1.0,
-                    1000.0,
-                    592.3056189855728,
-                    406.80385071294023,
-                    1000.0,
-                    1000.0,
-                    994.555205277195,
-                    653032.1638271426,
-                    541372.739231736,
-                    1000000.0,
-                    1000000.0,
-                    999.4189938644035,
-                    1000.0,
-                    1000.0,
-                    0.0,
-                    -3.301125022212318e-13,
-                    -5.436884476996649,
-                    -0.0,
-                    3.0717712661766863e-13,
-                    0.0015116199751028317,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    -1.104141703878849e-13,
-                    0.0008972676801011826,
-                    0.0,
-                    1.0178281899039169e-13,
-                    8.45683705221506e-06,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0,
-                    0.0
-                  ],
-                  [
-                    0,
-                    0,
-                    0,
-                    0,
-                    0,
-                    500,
-                    0,
-                    12,
-                    5,
-                    0,
-                    59,
-                    152,
-                    3,
-                    3,
-                    3,
-                    0,
-                    308,
-                    33,
-                    2,
-                    2,
-                    1,
-                    2,
-                    3,
-                    4,
-                    5,
-                    6,
-                    7,
-                    8,
-                    9,
-                    10,
-                    11,
-                    12,
-                    13
-                  ],
-                  2
-                ],
-                "handle": 7,
-                "istate": 2
-              },
-              "t": 313.2507737564009
-            }
-          },
-          "time_nodes": {
-            "list": [
-              {
-                "t": 159.8904761904762,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "time_bound": 600,
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              },
-              {
-                "t": 298.2290954115797,
-                "parachutes": [],
-                "callbacks": [],
-                "_controllers": [],
-                "_component_sensors": [],
-                "signature": {
-                  "module": "rocketpy.simulation.flight",
-                  "name": "Flight.TimeNodes.TimeNode"
-                }
-              }
-            ],
-            "signature": {
-              "module": "rocketpy.simulation.flight",
-              "name": "Flight.TimeNodes"
-            }
-          },
-          "signature": {
-            "module": "rocketpy.simulation.flight",
-            "name": "Flight.FlightPhases.FlightPhase"
-          }
-        },
-        {
-          "t": 298.2290954115797,
-          "derivative": null,
-          "callbacks": [],
-          "clear": true,
-          "signature": {
-            "module": "rocketpy.simulation.flight",
-            "name": "Flight.FlightPhases.FlightPhase"
-          }
-        }
-      ],
-      "signature": {
-        "module": "rocketpy.simulation.flight",
-        "name": "Flight.FlightPhases"
-      }
-    },
-    "ax": {
-      "source": [
-        [
-          0.0,
-          0.0
-        ],
-        [
-          0.0014095582940420635,
-          0.0
-        ],
-        [
-          0.002819116588084127,
-          0.0
-        ],
-        [
-          0.005638233176168254,
-          0.0
-        ],
-        [
-          0.008457349764252381,
-          0.0
-        ],
-        [
-          0.011276466352336508,
-          0.0
-        ],
-        [
-          0.03946763223317778,
-          0.0
-        ],
-        [
-          0.04085528032083424,
-          0.0
-        ],
-        [
-          0.042242928408490706,
-          0.0
-        ],
-        [
-          0.045018224583803626,
-          0.0
-        ],
-        [
-          0.047793520759116546,
-          0.0
-        ],
-        [
-          0.05056881693442947,
-          0.0
-        ],
-        [
-          0.051535065794346184,
-          0.0
-        ],
-        [
-          0.0525013146542629,
-          0.0
-        ],
-        [
-          0.05443381237409633,
-          0.0
-        ],
-        [
-          0.056366310093929756,
-          0.0
-        ],
-        [
-          0.05829880781376318,
-          0.0
-        ],
-        [
-          0.06066778422868188,
-          0.0
-        ],
-        [
-          0.06303676064360057,
-          0.0
-        ],
-        [
-          0.06540573705851926,
-          0.0
-        ],
-        [
-          0.08909550120770625,
-          0.0
-        ],
-        [
-          0.09280001741842829,
-          0.0
-        ],
-        [
-          0.09574786203389758,
-          0.0
-        ],
-        [
-          0.09869570664936687,
-          0.0
-        ],
-        [
-          0.10099207719472714,
-          0.0
-        ],
-        [
-          0.1032884477400874,
-          0.0
-        ],
-        [
-          0.10558481828544766,
-          0.0
-        ],
-        [
-          0.11017755937616817,
-          0.0
-        ],
-        [
-          0.11477030046688869,
-          0.0
-        ],
-        [
-          0.1193630415576092,
-          0.0
-        ],
-        [
-          0.13127045763130013,
-          0.0
-        ],
-        [
-          0.14317787370499105,
-          0.0
-        ],
-        [
-          0.14995992644651876,
-          0.0
-        ],
-        [
-          0.1542011028620784,
-          0.0
-        ],
-        [
-          0.15844227927763802,
-          0.0
-        ],
-        [
-          0.16268345569319764,
-          0.0
-        ],
-        [
-          0.1711658085243169,
-          0.0
-        ],
-        [
-          0.17964816135543615,
-          0.0
-        ],
-        [
-          0.1881305141865554,
-          0.0
-        ],
-        [
-          0.19446574773727407,
-          0.0
-        ],
-        [
-          0.20080098128799273,
-          0.0
-        ],
-        [
-          0.2056611859339936,
-          0.0
-        ],
-        [
-          0.21052139057999447,
-          0.0
-        ],
-        [
-          0.21538159522599534,
-          0.0
-        ],
-        [
-          0.22510200451799706,
-          0.0
-        ],
-        [
-          0.23482241380999877,
-          0.0
-        ],
-        [
-          0.24454282310200048,
-          0.0
-        ],
-        [
-          0.2542632323940022,
-          0.0
-        ],
-        [
-          0.35146732531401936,
-          0.0
-        ],
-        [
-          0.3632465986442917,
-          0.0
-        ],
-        [
-          0.3693545968582991,
-          0.0
-        ],
-        [
-          0.37546259507230645,
-          0.0
-        ],
-        [
-          0.3876785915003212,
-          0.0
-        ],
-        [
-          0.39989458792833593,
-          0.0
-        ],
-        [
-          0.4121105843563507,
-          0.0
-        ],
-        [
-          0.4714932108541475,
-          0.0
-        ],
-        [
-          0.5078257800637102,
-          0.0
-        ],
-        [
-          0.5343429255049618,
-          0.0
-        ],
-        [
-          0.5608600709462134,
-          0.0
-        ],
-        [
-          0.587377216387465,
-          0.0
-        ],
-        [
-          0.6404115072699682,
-          0.0
-        ],
-        [
-          0.6934457981524714,
-          0.0
-        ],
-        [
-          0.7464800890349746,
-          0.0
-        ],
-        [
-          0.7995143799174779,
-          0.0
-        ],
-        [
-          0.8131556786423583,
-          0.0
-        ],
-        [
-          0.8267969773672387,
-          0.0
-        ],
-        [
-          0.8404382760921191,
-          0.0
-        ],
-        [
-          0.8773817713324279,
-          0.0
-        ],
-        [
-          0.9143252665727367,
-          0.0
-        ],
-        [
-          0.9512687618130455,
-          0.0
-        ],
-        [
-          0.9671044469204755,
-          0.0
-        ],
-        [
-          0.9987682629763311,
-          0.0
-        ],
-        [
-          1.0182059593067265,
-          0.0
-        ],
-        [
-          1.037643655637122,
-          0.0
-        ],
-        [
-          1.0570813519675175,
-          0.0
-        ],
-        [
-          1.0878522163238507,
-          0.0
-        ],
-        [
-          1.1186230806801838,
-          0.0
-        ],
-        [
-          1.1439344065815038,
-          0.0
-        ],
-        [
-          1.1692457324828238,
-          0.0
-        ],
-        [
-          1.1945570583841438,
-          0.0
-        ],
-        [
-          1.2316667865519533,
-          0.0
-        ],
-        [
-          1.2687765147197627,
-          0.0
-        ],
-        [
-          1.3058862428875722,
-          0.0
-        ],
-        [
-          1.3429959710553816,
-          0.0
-        ],
-        [
-          1.4022433435144068,
-          0.0
-        ],
-        [
-          1.447124093183637,
-          0.0
-        ],
-        [
-          1.4920048428528674,
-          0.0
-        ],
-        [
-          1.5261259080406766,
-          0.0
-        ],
-        [
-          1.5602469732284858,
-          0.0
-        ],
-        [
-          1.594368038416295,
-          0.0
-        ],
-        [
-          1.6284891036041043,
-          0.0
-        ],
-        [
-          1.6626101687919135,
-          0.0
-        ],
-        [
-          1.6967312339797227,
-          0.0
-        ],
-        [
-          1.730852299167532,
-          0.0
-        ],
-        [
-          1.770204581699234,
-          0.0
-        ],
-        [
-          1.809556864230936,
-          0.0
-        ],
-        [
-          1.8489091467626382,
-          0.0
-        ],
-        [
-          1.8882614292943403,
-          0.0
-        ],
-        [
-          1.9276137118260424,
-          0.0
-        ],
-        [
-          1.9669659943577444,
-          0.0
-        ],
-        [
-          2.0063182768894463,
-          0.0
-        ],
-        [
-          2.0456705594211484,
-          0.0
-        ],
-        [
-          2.0850228419528505,
-          0.0
-        ],
-        [
-          2.1243751244845526,
-          0.0
-        ],
-        [
-          2.1637274070162547,
-          0.0
-        ],
-        [
-          2.2030796895479567,
-          0.0
-        ],
-        [
-          2.242431972079659,
-          0.0
-        ],
-        [
-          2.281784254611361,
-          0.0
-        ],
-        [
-          2.321136537143063,
-          0.0
-        ],
-        [
-          2.360488819674765,
-          0.0
-        ],
-        [
-          2.399841102206467,
-          0.0
-        ],
-        [
-          2.4391933847381693,
-          0.0
-        ],
-        [
-          2.4785456672698714,
-          0.0
-        ],
-        [
-          2.5178979498015734,
-          0.0
-        ],
-        [
-          2.5572502323332755,
-          0.0
-        ],
-        [
-          2.5966025148649776,
-          0.0
-        ],
-        [
-          2.6359547973966797,
-          0.0
-        ],
-        [
-          2.675307079928382,
-          0.0
-        ],
-        [
-          2.714659362460084,
-          0.0
-        ],
-        [
-          2.7466638251883717,
-          0.0
-        ],
-        [
-          2.7786682879166595,
-          0.0
-        ],
-        [
-          2.8106727506449474,
-          0.0
-        ],
-        [
-          2.842677213373235,
-          0.0
-        ],
-        [
-          2.874681676101523,
-          0.0
-        ],
-        [
-          2.9108918137851214,
-          0.0
-        ],
-        [
-          2.9402847513530936,
-          0.0
-        ],
-        [
-          2.9637983886571173,
-          0.0
-        ],
-        [
-          2.987312025961141,
-          0.0
-        ],
-        [
-          2.9914721939592726,
-          0.0
-        ],
-        [
-          2.995632361957404,
-          0.0
-        ],
-        [
-          2.9997925299555357,
-          0.0
-        ],
-        [
-          3.0010806713261253,
-          0.0
-        ],
-        [
-          3.002368812696715,
-          0.0
-        ],
-        [
-          3.0049450954378942,
-          0.0
-        ],
-        [
-          3.0075213781790735,
-          0.0
-        ],
-        [
-          3.031179520120233,
-          0.0
-        ],
-        [
-          3.0548376620613924,
-          0.0
-        ],
-        [
-          3.078495804002552,
-          0.0
-        ],
-        [
-          3.1021539459437113,
-          0.0
-        ],
-        [
-          3.1205915242496687,
-          0.0
-        ],
-        [
-          3.139029102555626,
-          0.0
-        ],
-        [
-          3.1574666808615834,
-          0.0
-        ],
-        [
-          3.1943418374734978,
-          0.0
-        ],
-        [
-          3.223214302746968,
-          0.0
-        ],
-        [
-          3.252086768020438,
-          0.0
-        ],
-        [
-          3.2809592332939084,
-          0.0
-        ],
-        [
-          3.2861061530217075,
-          0.0
-        ],
-        [
-          3.2912530727495066,
-          0.0
-        ],
-        [
-          3.2963999924773058,
-          0.0
-        ],
-        [
-          3.3042992470019175,
-          0.0
-        ],
-        [
-          3.312198501526529,
-          0.0
-        ],
-        [
-          3.320097756051141,
-          0.0
-        ],
-        [
-          3.329990894740742,
-          0.0
-        ],
-        [
-          3.339884033430343,
-          0.0
-        ],
-        [
-          3.349777172119944,
-          0.0
-        ],
-        [
-          3.3683253555356067,
-          0.0
-        ],
-        [
-          3.3868735389512694,
-          0.0
-        ],
-        [
-          3.4020443640890705,
-          0.0
-        ],
-        [
-          3.4113407650123997,
-          0.0
-        ],
-        [
-          3.420637165935729,
-          0.0
-        ],
-        [
-          3.429933566859058,
-          0.0
-        ],
-        [
-          3.446308281894537,
-          0.0
-        ],
-        [
-          3.4626829969300164,
-          0.0
-        ],
-        [
-          3.4790577119654955,
-          0.0
-        ],
-        [
-          3.5098113349838638,
-          0.0
-        ],
-        [
-          3.534175816549051,
-          0.0
-        ],
-        [
-          3.558540298114238,
-          0.0
-        ],
-        [
-          3.582904779679425,
-          0.0
-        ],
-        [
-          3.615075076269808,
-          0.0
-        ],
-        [
-          3.6472453728601906,
-          0.0
-        ],
-        [
-          3.6794156694505733,
-          0.0
-        ],
-        [
-          3.711585966040956,
-          0.0
-        ],
-        [
-          3.7510748617223286,
-          0.0
-        ],
-        [
-          3.790563757403701,
-          0.0
-        ],
-        [
-          3.830052653085074,
-          0.0
-        ],
-        [
-          3.862940498739986,
-          0.0
-        ],
-        [
-          3.895828344394898,
-          0.0
-        ],
-        [
-          3.901564462162616,
-          0.0
-        ],
-        [
-          3.9073005799303346,
-          0.0
-        ],
-        [
-          3.913036697698053,
-          0.0
-        ],
-        [
-          3.924489906398398,
-          0.0
-        ],
-        [
-          3.935943115098743,
-          0.0
-        ],
-        [
-          3.947396323799088,
-          0.0
-        ],
-        [
-          3.975516795322242,
-          0.0
-        ],
-        [
-          4.003637266845396,
-          0.0
-        ],
-        [
-          4.03175773836855,
-          0.0
-        ],
-        [
-          4.071718134752553,
-          0.0
-        ],
-        [
-          4.111678531136556,
-          0.0
-        ],
-        [
-          4.151638927520558,
-          0.0
-        ],
-        [
-          4.191599323904561,
-          0.0
-        ],
-        [
-          4.247720558129715,
-          0.0
-        ],
-        [
-          4.293788946145795,
-          0.0
-        ],
-        [
-          4.3319865166419085,
-          0.0
-        ],
-        [
-          4.370184087138022,
-          0.0
-        ],
-        [
-          4.408381657634136,
-          0.0
-        ],
-        [
-          4.44657922813025,
-          0.0
-        ],
-        [
-          4.484776798626363,
-          0.0
-        ],
-        [
-          4.527459427885128,
-          0.0
-        ],
-        [
-          4.570142057143892,
-          0.0
-        ],
-        [
-          4.612824686402656,
-          0.0
-        ],
-        [
-          4.655507315661421,
-          0.0
-        ],
-        [
-          4.698189944920185,
-          0.0
-        ],
-        [
-          4.752240597633832,
-          0.0
-        ],
-        [
-          4.806291250347479,
-          0.0
-        ],
-        [
-          4.8603419030611255,
-          0.0
-        ],
-        [
-          4.914392555774772,
-          0.0
-        ],
-        [
-          4.968443208488419,
-          0.0
-        ],
-        [
-          5.022493861202066,
-          0.0
-        ],
-        [
-          5.076544513915713,
-          0.0
-        ],
-        [
-          5.13059516662936,
-          0.0
-        ],
-        [
-          5.1846458193430065,
-          0.0
-        ],
-        [
-          5.238696472056653,
-          0.0
-        ],
-        [
-          5.2927471247703,
-          0.0
-        ],
-        [
-          5.342460668455986,
-          0.0
-        ],
-        [
-          5.392174212141671,
-          0.0
-        ],
-        [
-          5.441887755827357,
-          0.0
-        ],
-        [
-          5.491601299513042,
-          0.0
-        ],
-        [
-          5.554603109165186,
-          0.0
-        ],
-        [
-          5.617604918817331,
-          0.0
-        ],
-        [
-          5.6677507107483684,
-          0.0
-        ],
-        [
-          5.717896502679406,
-          0.0
-        ],
-        [
-          5.768042294610444,
-          0.0
-        ],
-        [
-          5.818188086541482,
-          0.0
-        ],
-        [
-          5.878315251829882,
-          0.0
-        ],
-        [
-          5.928299499698518,
-          0.0
-        ],
-        [
-          5.978283747567154,
-          0.0
-        ],
-        [
-          6.02826799543579,
-          0.0
-        ],
-        [
-          6.078252243304426,
-          0.0
-        ],
-        [
-          6.14293081584079,
-          0.0
-        ],
-        [
-          6.196765840796611,
-          0.0
-        ],
-        [
-          6.250600865752432,
-          0.0
-        ],
-        [
-          6.304435890708253,
-          0.0
-        ],
-        [
-          6.3582709156640735,
-          0.0
-        ],
-        [
-          6.433461438883678,
-          0.0
-        ],
-        [
-          6.493499513622796,
-          0.0
-        ],
-        [
-          6.553537588361913,
-          0.0
-        ],
-        [
-          6.613575663101031,
-          0.0
-        ],
-        [
-          6.6736137378401486,
-          0.0
-        ],
-        [
-          6.752474107792829,
-          0.0
-        ],
-        [
-          6.813959694855546,
-          0.0
-        ],
-        [
-          6.875445281918263,
-          0.0
-        ],
-        [
-          6.93693086898098,
-          0.0
-        ],
-        [
-          6.998416456043697,
-          0.0
-        ],
-        [
-          7.079711027784927,
-          0.0
-        ],
-        [
-          7.1413765714336215,
-          0.0
-        ],
-        [
-          7.203042115082316,
-          0.0
-        ],
-        [
-          7.264707658731011,
-          0.0
-        ],
-        [
-          7.326373202379705,
-          0.0
-        ],
-        [
-          7.4088916340702395,
-          0.0
-        ],
-        [
-          7.471438984396619,
-          0.0
-        ],
-        [
-          7.533986334722999,
-          0.0
-        ],
-        [
-          7.596533685049379,
-          0.0
-        ],
-        [
-          7.659081035375759,
-          0.0
-        ],
-        [
-          7.748666795076123,
-          0.0
-        ],
-        [
-          7.759103537845691,
-          0.0
-        ],
-        [
-          7.769540280615259,
-          0.0
-        ],
-        [
-          7.779977023384827,
-          0.0
-        ],
-        [
-          7.800850508923962,
-          0.0
-        ],
-        [
-          7.821723994463097,
-          0.0
-        ],
-        [
-          7.842597480002232,
-          0.0
-        ],
-        [
-          7.900172892552435,
-          0.0
-        ],
-        [
-          7.957748305102638,
-          0.0
-        ],
-        [
-          8.01532371765284,
-          0.0
-        ],
-        [
-          8.072899130203044,
-          0.0
-        ],
-        [
-          8.14886572486838,
-          0.0
-        ],
-        [
-          8.224832319533714,
-          0.0
-        ],
-        [
-          8.30079891419905,
-          0.0
-        ],
-        [
-          8.376765508864384,
-          0.0
-        ],
-        [
-          8.45273210352972,
-          0.0
-        ],
-        [
-          8.5564809550127,
-          0.0
-        ],
-        [
-          8.632458997358304,
-          0.0
-        ],
-        [
-          8.708437039703908,
-          0.0
-        ],
-        [
-          8.784415082049511,
-          0.0
-        ],
-        [
-          8.860393124395115,
-          0.0
-        ],
-        [
-          8.936371166740718,
-          0.0
-        ],
-        [
-          9.012349209086322,
-          0.0
-        ],
-        [
-          9.088327251431926,
-          0.0
-        ],
-        [
-          9.16430529377753,
-          0.0
-        ],
-        [
-          9.255988954542772,
-          0.0
-        ],
-        [
-          9.329184490076974,
-          0.0
-        ],
-        [
-          9.402380025611176,
-          0.0
-        ],
-        [
-          9.475575561145378,
-          0.0
-        ],
-        [
-          9.54877109667958,
-          0.0
-        ],
-        [
-          9.621966632213782,
-          0.0
-        ],
-        [
-          9.69992497595067,
-          0.0
-        ],
-        [
-          9.77788331968756,
-          0.0
-        ],
-        [
-          9.855841663424448,
-          0.0
-        ],
-        [
-          9.933800007161336,
-          0.0
-        ],
-        [
-          10.011758350898225,
-          0.0
-        ],
-        [
-          10.089716694635113,
-          0.0
-        ],
-        [
-          10.167675038372002,
-          0.0
-        ],
-        [
-          10.260259956542143,
-          0.0
-        ],
-        [
-          10.331983881553601,
-          0.0
-        ],
-        [
-          10.403707806565059,
-          0.0
-        ],
-        [
-          10.475431731576517,
-          0.0
-        ],
-        [
-          10.570210949134573,
-          0.0
-        ],
-        [
-          10.664990166692629,
-          0.0
-        ],
-        [
-          10.759769384250685,
-          0.0
-        ],
-        [
-          10.854548601808741,
-          0.0
-        ],
-        [
-          10.949327819366797,
-          0.0
-        ],
-        [
-          11.044107036924853,
-          0.0
-        ],
-        [
-          11.138886254482909,
-          0.0
-        ],
-        [
-          11.223078569708694,
-          0.0
-        ],
-        [
-          11.307270884934479,
-          0.0
-        ],
-        [
-          11.391463200160263,
-          0.0
-        ],
-        [
-          11.526298565803183,
-          0.0
-        ],
-        [
-          11.629928166907957,
-          0.0
-        ],
-        [
-          11.733557768012732,
-          0.0
-        ],
-        [
-          11.837187369117506,
-          0.0
-        ],
-        [
-          11.940816970222281,
-          0.0
-        ],
-        [
-          12.064752353445058,
-          0.0
-        ],
-        [
-          12.188687736667836,
-          0.0
-        ],
-        [
-          12.312623119890613,
-          0.0
-        ],
-        [
-          12.43655850311339,
-          0.0
-        ],
-        [
-          12.560493886336168,
-          0.0
-        ],
-        [
-          12.684429269558946,
-          0.0
-        ],
-        [
-          12.808364652781723,
-          0.0
-        ],
-        [
-          12.831782867710663,
-          0.0
-        ],
-        [
-          12.855201082639603,
-          0.0
-        ],
-        [
-          12.878619297568543,
-          0.0
-        ],
-        [
-          12.925455727426423,
-          0.0
-        ],
-        [
-          12.972292157284302,
-          0.0
-        ],
-        [
-          13.019128587142182,
-          0.0
-        ],
-        [
-          13.153906925069139,
-          0.0
-        ],
-        [
-          13.288685262996095,
-          0.0
-        ],
-        [
-          13.423463600923052,
-          0.0
-        ],
-        [
-          13.558241938850008,
-          0.0
-        ],
-        [
-          13.693020276776965,
-          0.0
-        ],
-        [
-          13.827798614703921,
-          0.0
-        ],
-        [
-          13.962576952630878,
-          0.0
-        ],
-        [
-          14.097355290557834,
-          0.0
-        ],
-        [
-          14.23213362848479,
-          0.0
-        ],
-        [
-          14.366911966411747,
-          0.0
-        ],
-        [
-          14.54025856584105,
-          0.0
-        ],
-        [
-          14.682392980564643,
-          0.0
-        ],
-        [
-          14.824527395288236,
-          0.0
-        ],
-        [
-          14.966661810011828,
-          0.0
-        ],
-        [
-          15.108796224735421,
-          0.0
-        ],
-        [
-          15.286616031474669,
-          0.0
-        ],
-        [
-          15.464435838213916,
-          0.0
-        ],
-        [
-          15.642255644953163,
-          0.0
-        ],
-        [
-          15.82007545169241,
-          0.0
-        ],
-        [
-          15.997895258431658,
-          0.0
-        ],
-        [
-          16.175715065170905,
-          0.0
-        ],
-        [
-          16.353534871910153,
-          0.0
-        ],
-        [
-          16.5313546786494,
-          0.0
-        ],
-        [
-          16.709174485388647,
-          0.0
-        ],
-        [
-          16.886994292127895,
-          0.0
-        ],
-        [
-          17.0827216691956,
-          0.0
-        ],
-        [
-          17.245756216665097,
-          0.0
-        ],
-        [
-          17.408790764134594,
-          0.0
-        ],
-        [
-          17.57182531160409,
-          0.0
-        ],
-        [
-          17.734859859073588,
-          0.0
-        ],
-        [
-          17.87633414755382,
-          0.0
-        ],
-        [
-          17.989632326456782,
-          0.0
-        ],
-        [
-          18.102930505359744,
-          0.0
-        ],
-        [
-          18.216228684262706,
-          0.0
-        ],
-        [
-          18.392123725075212,
-          0.0
-        ],
-        [
-          18.568018765887718,
-          0.0
-        ],
-        [
-          18.743913806700224,
-          0.0
-        ],
-        [
-          18.91980884751273,
-          0.0
-        ],
-        [
-          19.13456671816614,
-          0.0
-        ],
-        [
-          19.349324588819552,
-          0.0
-        ],
-        [
-          19.564082459472964,
-          0.0
-        ],
-        [
-          19.778840330126375,
-          0.0
-        ],
-        [
-          19.993598200779786,
-          0.0
-        ],
-        [
-          20.208356071433197,
-          0.0
-        ],
-        [
-          20.42311394208661,
-          0.0
-        ],
-        [
-          20.63787181274002,
-          0.0
-        ],
-        [
-          20.89524769419444,
-          0.0
-        ],
-        [
-          21.152623575648857,
-          0.0
-        ],
-        [
-          21.409999457103275,
-          0.0
-        ],
-        [
-          21.667375338557694,
-          0.0
-        ],
-        [
-          21.924751220012112,
-          0.0
-        ],
-        [
-          22.18212710146653,
-          0.0
-        ],
-        [
-          22.469164792221026,
-          0.0
-        ],
-        [
-          22.75620248297552,
-          0.0
-        ],
-        [
-          23.043240173730016,
-          0.0
-        ],
-        [
-          23.33027786448451,
-          0.0
-        ],
-        [
-          23.617315555239006,
-          0.0
-        ],
-        [
-          23.9043532459935,
-          0.0
-        ],
-        [
-          24.191390936747997,
-          0.0
-        ],
-        [
-          24.419341542299552,
-          0.0
-        ],
-        [
-          24.647292147851108,
-          0.0
-        ],
-        [
-          24.875242753402663,
-          0.0
-        ],
-        [
-          25.10319335895422,
-          0.0
-        ],
-        [
-          25.331143964505774,
-          0.0
-        ],
-        [
-          25.51872139829633,
-          0.0
-        ],
-        [
-          25.706298832086883,
-          0.0
-        ],
-        [
-          25.884966627110675,
-          0.0
-        ],
-        [
-          25.88571428571429,
-          0.0
-        ],
-        [
-          25.891724887187262,
-          0.0
-        ],
-        [
-          25.897735488660235,
-          0.0
-        ],
-        [
-          25.909756691606184,
-          0.0
-        ],
-        [
-          25.921777894552132,
-          0.0
-        ],
-        [
-          25.93379909749808,
-          0.0
-        ],
-        [
-          26.05401112695755,
-          0.0
-        ],
-        [
-          26.17422315641702,
-          0.0
-        ],
-        [
-          26.29443518587649,
-          0.0
-        ],
-        [
-          26.41464721533596,
-          0.0
-        ],
-        [
-          26.590536971802308,
-          0.0
-        ],
-        [
-          26.766426728268655,
-          0.0
-        ],
-        [
-          26.942316484735002,
-          0.0
-        ],
-        [
-          27.11820624120135,
-          0.0
-        ],
-        [
-          27.294095997667696,
-          0.0
-        ],
-        [
-          27.38571428571429,
-          0.0
-        ],
-        [
-          27.403707346930535,
-          -0.0
-        ],
-        [
-          27.42170040814678,
-          -0.0
-        ],
-        [
-          27.457686530579274,
-          -0.0
-        ],
-        [
-          27.493672653011767,
-          -0.0
-        ],
-        [
-          27.52965877544426,
-          -0.0
-        ],
-        [
-          27.722358182653522,
-          -0.0
-        ],
-        [
-          27.915057589862784,
-          -0.0
-        ],
-        [
-          28.107756997072045,
-          -0.0
-        ],
-        [
-          28.300456404281306,
-          -0.0
-        ],
-        [
-          28.59167900359794,
-          -0.0
-        ],
-        [
-          28.882901602914572,
-          -0.0
-        ],
-        [
-          29.174124202231205,
-          -0.0
-        ],
-        [
-          29.465346801547838,
-          -0.0
-        ],
-        [
-          29.75656940086447,
-          -0.0
-        ],
-        [
-          30.25579246872472,
-          -0.0
-        ],
-        [
-          30.75501553658497,
-          -0.0
-        ],
-        [
-          31.25423860444522,
-          -0.0
-        ],
-        [
-          31.75346167230547,
-          -0.0
-        ],
-        [
-          32.25268474016572,
-          -0.0
-        ],
-        [
-          32.75190780802597,
-          -0.0
-        ],
-        [
-          33.48826295234864,
-          -0.0
-        ],
-        [
-          34.224618096671314,
-          -0.0
-        ],
-        [
-          34.96097324099399,
-          -0.0
-        ],
-        [
-          35.69732838531666,
-          -0.0
-        ],
-        [
-          36.43368352963933,
-          -0.0
-        ],
-        [
-          37.18331742700439,
-          -0.0
-        ],
-        [
-          37.93295132436945,
-          -0.0
-        ],
-        [
-          38.682585221734506,
-          -0.0
-        ],
-        [
-          39.432219119099564,
-          -0.0
-        ],
-        [
-          40.18185301646462,
-          -0.0
-        ],
-        [
-          41.55565606299418,
-          -0.0
-        ],
-        [
-          42.92945910952374,
-          -0.0
-        ],
-        [
-          44.3032621560533,
-          -0.0
-        ],
-        [
-          45.67706520258286,
-          -0.0
-        ],
-        [
-          47.05086824911242,
-          -0.0
-        ],
-        [
-          48.62323521534373,
-          -0.0
-        ],
-        [
-          50.19560218157505,
-          -0.0
-        ],
-        [
-          51.76796914780636,
-          -0.0
-        ],
-        [
-          53.340336114037676,
-          -0.0
-        ],
-        [
-          54.91270308026899,
-          -0.0
-        ],
-        [
-          55.86204148248446,
-          -0.0
-        ],
-        [
-          56.811379884699925,
-          -0.0
-        ],
-        [
-          57.76071828691539,
-          -0.0
-        ],
-        [
-          58.71005668913086,
-          -0.0
-        ],
-        [
-          59.701612671241776,
-          -0.0
-        ],
-        [
-          60.69316865335269,
-          -0.0
-        ],
-        [
-          61.68472463546361,
-          -0.0
-        ],
-        [
-          63.019700273431596,
-          -0.0
-        ],
-        [
-          64.35467591139958,
-          -0.0
-        ],
-        [
-          65.68965154936757,
-          -0.0
-        ],
-        [
-          67.66870000169779,
-          -0.0
-        ],
-        [
-          69.647748454028,
-          -0.0
-        ],
-        [
-          71.62679690635822,
-          -0.0
-        ],
-        [
-          73.60427163292789,
-          -0.0
-        ],
-        [
-          75.58174635949756,
-          -0.0
-        ],
-        [
-          77.55922108606723,
-          -0.0
-        ],
-        [
-          83.74360774187622,
-          -0.0
-        ],
-        [
-          89.92799439768521,
-          -0.0
-        ],
-        [
-          91.47409106163745,
-          -0.0
-        ],
-        [
-          93.0201877255897,
-          -0.0
-        ],
-        [
-          94.56628438954193,
-          -0.0
-        ],
-        [
-          95.55174469780209,
-          -0.0
-        ],
-        [
-          96.53720500606225,
-          -0.0
-        ],
-        [
-          97.52266531432241,
-          -0.0
-        ],
-        [
-          98.50866761324593,
-          -0.0
-        ],
-        [
-          104.229915181177,
-          -0.0
-        ],
-        [
-          109.95116274910808,
-          -0.0
-        ],
-        [
-          115.67241031703915,
-          -0.0
-        ],
-        [
-          123.80427445904986,
-          -0.0
-        ],
-        [
-          131.93613860106058,
-          -0.0
-        ],
-        [
-          140.0680027430713,
-          -0.0
-        ],
-        [
-          148.19986688508203,
-          -0.0
-        ],
-        [
-          158.3904761904762,
-          -0.0
-        ],
-        [
-          158.5093989588007,
-          -0.0
-        ],
-        [
-          158.62832172712518,
-          -0.0
-        ],
-        [
-          159.8904761904762,
-          -0.0
-        ],
-        [
-          159.89288732694692,
-          -0.0
-        ],
-        [
-          159.89529846341765,
-          -0.0
-        ],
-        [
-          159.90012073635913,
-          -0.0
-        ],
-        [
-          159.9049430093006,
-          -0.0
-        ],
-        [
-          159.9097652822421,
-          -0.0
-        ],
-        [
-          159.93243780659526,
-          -0.0
-        ],
-        [
-          159.95511033094843,
-          -0.0
-        ],
-        [
-          159.9777828553016,
-          -0.0
-        ],
-        [
-          160.00045537965477,
-          -0.0
-        ],
-        [
-          160.0346633693688,
-          -0.0
-        ],
-        [
-          160.0688713590828,
-          -0.0
-        ],
-        [
-          160.10307934879683,
-          -0.0
-        ],
-        [
-          160.13728733851084,
-          -0.0
-        ],
-        [
-          160.17149532822486,
-          -0.0
-        ],
-        [
-          160.23106728260558,
-          -0.0
-        ],
-        [
-          160.2906392369863,
-          -0.0
-        ],
-        [
-          160.350211191367,
-          -0.0
-        ],
-        [
-          160.40978314574772,
-          -0.0
-        ],
-        [
-          160.46935510012844,
-          -0.0
-        ],
-        [
-          160.52892705450915,
-          -0.0
-        ],
-        [
-          160.6259323588013,
-          -0.0
-        ],
-        [
-          160.72293766309343,
-          -0.0
-        ],
-        [
-          160.81994296738557,
-          -0.0
-        ],
-        [
-          160.9169482716777,
-          -0.0
-        ],
-        [
-          161.01395357596985,
-          -0.0
-        ],
-        [
-          161.110958880262,
-          -0.0
-        ],
-        [
-          161.26736304673776,
-          -0.0
-        ],
-        [
-          161.42376721321352,
-          -0.0
-        ],
-        [
-          161.5801713796893,
-          -0.0
-        ],
-        [
-          161.73657554616506,
-          -0.0
-        ],
-        [
-          161.89297971264082,
-          -0.0
-        ],
-        [
-          162.11653214894974,
-          -0.0
-        ],
-        [
-          162.34008458525867,
-          -0.0
-        ],
-        [
-          162.5636370215676,
-          -0.0
-        ],
-        [
-          162.7871894578765,
-          -0.0
-        ],
-        [
-          163.01074189418543,
-          -0.0
-        ],
-        [
-          163.3020518484637,
-          -0.0
-        ],
-        [
-          163.59336180274195,
-          -0.0
-        ],
-        [
-          163.88467175702021,
-          -0.0
-        ],
-        [
-          164.17598171129848,
-          -0.0
-        ],
-        [
-          164.4850936705858,
-          -0.0
-        ],
-        [
-          164.79420562987312,
-          -0.0
-        ],
-        [
-          165.10331758916044,
-          -0.0
-        ],
-        [
-          165.4129391221861,
-          -0.0
-        ],
-        [
-          165.72256065521174,
-          -0.0
-        ],
-        [
-          166.03218218823739,
-          -0.0
-        ],
-        [
-          166.34184757413777,
-          -0.0
-        ],
-        [
-          167.93141144685217,
-          -0.0
-        ],
-        [
-          169.52097531956656,
-          -0.0
-        ],
-        [
-          171.11053919228095,
-          -0.0
-        ],
-        [
-          175.76088994831585,
-          -0.0
-        ],
-        [
-          180.41124070435075,
-          -0.0
-        ],
-        [
-          185.06159146038564,
-          -0.0
-        ],
-        [
-          202.12571753179242,
-          -0.0
-        ],
-        [
-          219.1898436031992,
-          -0.0
-        ],
-        [
-          236.25396967460597,
-          -0.0
-        ],
-        [
-          261.9195710352043,
-          -0.0
-        ],
-        [
-          287.5851723958026,
-          -0.0
-        ],
-        [
-          298.2290954115797,
-          -0.0
-        ]
-      ],
-      "title": "Ax (M/S\u00b2) x Time (S)",
-      "inputs": [
-        "Time (s)"
-      ],
-      "outputs": [
-        "Ax (m/s\u00b2)"
-      ],
-      "interpolation": "spline",
-      "extrapolation": "zero",
-      "signature": {
-        "module": "rocketpy.mathutils.function",
-        "name": "Function"
-      }
-    },
-    "ay": {
-      "source": [
-        [
-          0.0,
-          0.0
-        ],
-        [
-          0.0014095582940420635,
-          0.0
-        ],
-        [
-          0.002819116588084127,
-          0.0
-        ],
-        [
-          0.005638233176168254,
-          0.0
-        ],
-        [
-          0.008457349764252381,
-          0.0
-        ],
-        [
-          0.011276466352336508,
-          0.0
-        ],
-        [
-          0.03946763223317778,
-          0.0
-        ],
-        [
-          0.04085528032083424,
-          0.0
-        ],
-        [
-          0.042242928408490706,
-          0.0
-        ],
-        [
-          0.045018224583803626,
-          0.0
-        ],
-        [
-          0.047793520759116546,
-          0.0
-        ],
-        [
-          0.05056881693442947,
-          0.0
-        ],
-        [
-          0.051535065794346184,
-          0.0
-        ],
-        [
-          0.0525013146542629,
-          0.0
-        ],
-        [
-          0.05443381237409633,
-          0.0
-        ],
-        [
-          0.056366310093929756,
-          0.0
-        ],
-        [
-          0.05829880781376318,
-          0.17066448045726795
-        ],
-        [
-          0.06066778422868188,
-          0.5776821615609629
-        ],
-        [
-          0.06303676064360057,
-          0.9847260914707551
-        ],
-        [
-          0.06540573705851926,
-          1.3918072982247383
-        ],
-        [
-          0.08909550120770625,
-          5.465593564225636
-        ],
-        [
-          0.09280001741842829,
-          6.193050420582569
-        ],
-        [
-          0.09574786203389758,
-          7.031205254074603
-        ],
-        [
-          0.09869570664936687,
-          7.869687245884449
-        ],
-        [
-          0.10099207719472714,
-          8.259288725621483
-        ],
-        [
-          0.1032884477400874,
-          8.302114228638175
-        ],
-        [
-          0.10558481828544766,
-          8.344953590060364
-        ],
-        [
-          0.11017755937616817,
-          8.430689445468847
-        ],
-        [
-          0.11477030046688869,
-          8.516489696038816
-        ],
-        [
-          0.1193630415576092,
-          8.602324454055518
-        ],
-        [
-          0.13127045763130013,
-          8.825096909115425
-        ],
-        [
-          0.14317787370499105,
-          9.048249301638663
-        ],
-        [
-          0.14995992644651876,
-          9.175531540388507
-        ],
-        [
-          0.1542011028620784,
-          9.025349097465282
-        ],
-        [
-          0.15844227927763802,
-          8.87285548646377
-        ],
-        [
-          0.16268345569319764,
-          8.720229468627794
-        ],
-        [
-          0.1711658085243169,
-          8.41474189706442
-        ],
-        [
-          0.17964816135543615,
-          8.108782779808617
-        ],
-        [
-          0.1881305141865554,
-          7.802441102975161
-        ],
-        [
-          0.19446574773727407,
-          7.573414085500424
-        ],
-        [
-          0.20080098128799273,
-          7.375281752302953
-        ],
-        [
-          0.2056611859339936,
-          7.388116488597979
-        ],
-        [
-          0.21052139057999447,
-          7.400954548263641
-        ],
-        [
-          0.21538159522599534,
-          7.413796262631882
-        ],
-        [
-          0.22510200451799706,
-          7.43949488669326
-        ],
-        [
-          0.23482241380999877,
-          7.4652240539930705
-        ],
-        [
-          0.24454282310200048,
-          7.490958083286154
-        ],
-        [
-          0.2542632323940022,
-          7.516696805390198
-        ],
-        [
-          0.35146732531401936,
-          7.774976380619934
-        ],
-        [
-          0.3632465986442917,
-          7.806393778410384
-        ],
-        [
-          0.3693545968582991,
-          8.67096681929098
-        ],
-        [
-          0.37546259507230645,
-          8.686999158264552
-        ],
-        [
-          0.3876785915003212,
-          8.719039845343957
-        ],
-        [
-          0.39989458792833593,
-          8.751069027002496
-        ],
-        [
-          0.4121105843563507,
-          8.783143926069007
-        ],
-        [
-          0.4714932108541475,
-          8.939635416419847
-        ],
-        [
-          0.5078257800637102,
-          9.025025975353422
-        ],
-        [
-          0.5343429255049618,
-          9.055344328778398
-        ],
-        [
-          0.5608600709462134,
-          9.086361172268202
-        ],
-        [
-          0.587377216387465,
-          9.118297909715317
-        ],
-        [
-          0.6404115072699682,
-          9.18582123332871
-        ],
-        [
-          0.6934457981524714,
-          9.260099511389072
-        ],
-        [
-          0.7464800890349746,
-          9.343336598438091
-        ],
-        [
-          0.7995143799174779,
-          9.43791466499524
-        ],
-        [
-          0.8131556786423583,
-          9.464365193176551
-        ],
-        [
-          0.8267969773672387,
-          9.491765171128655
-        ],
-        [
-          0.8404382760921191,
-          9.520137627742894
-        ],
-        [
-          0.8773817713324279,
-          9.602177316224402
-        ],
-        [
-          0.9143252665727367,
-          9.692222374299039
-        ],
-        [
-          0.9512687618130455,
-          9.790726499601405
-        ],
-        [
-          0.9671044469204755,
-          9.83561658513606
-        ],
-        [
-          0.9987682629763311,
-          9.93015704461958
-        ],
-        [
-          1.0182059593067265,
-          9.970656864321752
-        ],
-        [
-          1.037643655637122,
-          10.01118505720327
-        ],
-        [
-          1.0570813519675175,
-          10.053757087840882
-        ],
-        [
-          1.0878522163238507,
-          10.12496853942643
-        ],
-        [
-          1.1186230806801838,
-          10.20039366701872
-        ],
-        [
-          1.1439344065815038,
-          10.265149641508057
-        ],
-        [
-          1.1692457324828238,
-          10.331784822147126
-        ],
-        [
-          1.1945570583841438,
-          10.399714981172295
-        ],
-        [
-          1.2316667865519533,
-          10.500509027656387
-        ],
-        [
-          1.2687765147197627,
-          10.60048419493683
-        ],
-        [
-          1.3058862428875722,
-          10.696832392697141
-        ],
-        [
-          1.3429959710553816,
-          10.786707746789043
-        ],
-        [
-          1.4022433435144068,
-          10.90994334541768
-        ],
-        [
-          1.447124093183637,
-          10.981036661939438
-        ],
-        [
-          1.4920048428528674,
-          11.02872822251064
-        ],
-        [
-          1.5261259080406766,
-          11.028653378644508
-        ],
-        [
-          1.5602469732284858,
-          11.00677012127213
-        ],
-        [
-          1.594368038416295,
-          10.970028868470948
-        ],
-        [
-          1.6284891036041043,
-          10.919851482653845
-        ],
-        [
-          1.6626101687919135,
-          10.858456271305933
-        ],
-        [
-          1.6967312339797227,
-          10.788806936506797
-        ],
-        [
-          1.730852299167532,
-          10.714509683253556
-        ],
-        [
-          1.770204581699234,
-          10.628329272774
-        ],
-        [
-          1.809556864230936,
-          10.547940379459808
-        ],
-        [
-          1.8489091467626382,
-          10.479728610875162
-        ],
-        [
-          1.8882614292943403,
-          10.429081126532784
-        ],
-        [
-          1.9276137118260424,
-          10.399394261860948
-        ],
-        [
-          1.9669659943577444,
-          10.391684565331138
-        ],
-        [
-          2.0063182768894463,
-          10.401793024240147
-        ],
-        [
-          2.0456705594211484,
-          10.412609718230822
-        ],
-        [
-          2.0850228419528505,
-          10.432772566350076
-        ],
-        [
-          2.1243751244845526,
-          10.453754534351726
-        ],
-        [
-          2.1637274070162547,
-          10.466282096041708
-        ],
-        [
-          2.2030796895479567,
-          10.461634387229726
-        ],
-        [
-          2.242431972079659,
-          10.43335022732134
-        ],
-        [
-          2.281784254611361,
-          10.378125235294366
-        ],
-        [
-          2.321136537143063,
-          10.296651359747996
-        ],
-        [
-          2.360488819674765,
-          10.193863090438189
-        ],
-        [
-          2.399841102206467,
-          10.078285832514215
-        ],
-        [
-          2.4391933847381693,
-          9.961041517513918
-        ],
-        [
-          2.4785456672698714,
-          9.853227639034703
-        ],
-        [
-          2.5178979498015734,
-          9.778043833171044
-        ],
-        [
-          2.5572502323332755,
-          9.748898330236337
-        ],
-        [
-          2.5966025148649776,
-          9.746801219528614
-        ],
-        [
-          2.6359547973966797,
-          9.764812085081171
-        ],
-        [
-          2.675307079928382,
-          9.792806685671163
-        ],
-        [
-          2.714659362460084,
-          9.81810651730456
-        ],
-        [
-          2.7466638251883717,
-          9.827783646311232
-        ],
-        [
-          2.7786682879166595,
-          9.822075257311903
-        ],
-        [
-          2.8106727506449474,
-          9.798363833168413
-        ],
-        [
-          2.842677213373235,
-          9.757076554375612
-        ],
-        [
-          2.874681676101523,
-          9.701711657798583
-        ],
-        [
-          2.9108918137851214,
-          9.60676971136089
-        ],
-        [
-          2.9402847513530936,
-          9.47510060510188
-        ],
-        [
-          2.9637983886571173,
-          9.369485813229085
-        ],
-        [
-          2.987312025961141,
-          9.270152096591364
-        ],
-        [
-          2.9914721939592726,
-          9.253359362466623
-        ],
-        [
-          2.995632361957404,
-          9.236820465714032
-        ],
-        [
-          2.9997925299555357,
-          9.220534082566328
-        ],
-        [
-          3.0010806713261253,
-          9.205829145758988
-        ],
-        [
-          3.002368812696715,
-          9.174258159927316
-        ],
-        [
-          3.0049450954378942,
-          9.111214395505227
-        ],
-        [
-          3.0075213781790735,
-          9.048266304251891
-        ],
-        [
-          3.031179520120233,
-          8.47385867851012
-        ],
-        [
-          3.0548376620613924,
-          7.906384094783762
-        ],
-        [
-          3.078495804002552,
-          7.344602608778492
-        ],
-        [
-          3.1021539459437113,
-          6.786566938046732
-        ],
-        [
-          3.1205915242496687,
-          6.352949717372885
-        ],
-        [
-          3.139029102555626,
-          5.919171651872528
-        ],
-        [
-          3.1574666808615834,
-          5.484140760559983
-        ],
-        [
-          3.1943418374734978,
-          4.607114187417851
-        ],
-        [
-          3.223214302746968,
-          3.9109293790256743
-        ],
-        [
-          3.252086768020438,
-          3.205358870686374
-        ],
-        [
-          3.2809592332939084,
-          2.4913526519075457
-        ],
-        [
-          3.2861061530217075,
-          2.3632990483019745
-        ],
-        [
-          3.2912530727495066,
-          2.235076188525272
-        ],
-        [
-          3.2963999924773058,
-          2.1067065551124156
-        ],
-        [
-          3.3042992470019175,
-          1.9560738895428813
-        ],
-        [
-          3.312198501526529,
-          1.8585093880494694
-        ],
-        [
-          3.320097756051141,
-          1.7607427106228535
-        ],
-        [
-          3.329990894740742,
-          1.6381233254682153
-        ],
-        [
-          3.339884033430343,
-          1.5154300295526488
-        ],
-        [
-          3.349777172119944,
-          1.3927994832276727
-        ],
-        [
-          3.3683253555356067,
-          1.1636335166163352
-        ],
-        [
-          3.3868735389512694,
-          0.9359749598264172
-        ],
-        [
-          3.4020443640890705,
-          0.7615663645311165
-        ],
-        [
-          3.4113407650123997,
-          0.71622053406508
-        ],
-        [
-          3.420637165935729,
-          0.671516696794469
-        ],
-        [
-          3.429933566859058,
-          0.6274903056220402
-        ],
-        [
-          3.446308281894537,
-          0.5516611541265768
-        ],
-        [
-          3.4626829969300164,
-          0.4780050099255485
-        ],
-        [
-          3.4790577119654955,
-          0.40643679031986124
-        ],
-        [
-          3.5098113349838638,
-          0.2766219832783501
-        ],
-        [
-          3.534175816549051,
-          0.17711144812577795
-        ],
-        [
-          3.558540298114238,
-          0.07927051670831409
-        ],
-        [
-          3.582904779679425,
-          -0.01819120340262903
-        ],
-        [
-          3.615075076269808,
-          -0.14791449104895982
-        ],
-        [
-          3.6472453728601906,
-          -0.2812558024442262
-        ],
-        [
-          3.6794156694505733,
-          -0.4199907516323691
-        ],
-        [
-          3.711585966040956,
-          -0.5644257036295166
-        ],
-        [
-          3.7510748617223286,
-          -0.7481465231429589
-        ],
-        [
-          3.790563757403701,
-          -0.9354491122939363
-        ],
-        [
-          3.830052653085074,
-          -1.121311234544447
-        ],
-        [
-          3.862940498739986,
-          -1.2717757124251308
-        ],
-        [
-          3.895828344394898,
-          -1.4169632024708592
-        ],
-        [
-          3.901564462162616,
-          -1.4373069452112663
-        ],
-        [
-          3.9073005799303346,
-          -1.4350831672081574
-        ],
-        [
-          3.913036697698053,
-          -1.432727831197695
-        ],
-        [
-          3.924489906398398,
-          -1.4276650165020406
-        ],
-        [
-          3.935943115098743,
-          -1.4221588688287374
-        ],
-        [
-          3.947396323799088,
-          -1.4162666974475424
-        ],
-        [
-          3.975516795322242,
-          -1.4007811716738459
-        ],
-        [
-          4.003637266845396,
-          -1.3845334449409958
-        ],
-        [
-          4.03175773836855,
-          -1.3685324668377437
-        ],
-        [
-          4.071718134752553,
-          -1.3476403496761857
-        ],
-        [
-          4.111678531136556,
-          -1.3308258953372245
-        ],
-        [
-          4.151638927520558,
-          -1.3190132261945946
-        ],
-        [
-          4.191599323904561,
-          -1.311591726741265
-        ],
-        [
-          4.247720558129715,
-          -1.3053885562259717
-        ],
-        [
-          4.293788946145795,
-          -1.3000485684793188
-        ],
-        [
-          4.3319865166419085,
-          -1.2925475656093184
-        ],
-        [
-          4.370184087138022,
-          -1.2812721819046609
-        ],
-        [
-          4.408381657634136,
-          -1.2666209521469358
-        ],
-        [
-          4.44657922813025,
-          -1.249901571735432
-        ],
-        [
-          4.484776798626363,
-          -1.2328363062248047
-        ],
-        [
-          4.527459427885128,
-          -1.2153333161672435
-        ],
-        [
-          4.570142057143892,
-          -1.2010010321184903
-        ],
-        [
-          4.612824686402656,
-          -1.1932737794088397
-        ],
-        [
-          4.655507315661421,
-          -1.1901585161165273
-        ],
-        [
-          4.698189944920185,
-          -1.1885050281590985
-        ],
-        [
-          4.752240597633832,
-          -1.1859165656023696
-        ],
-        [
-          4.806291250347479,
-          -1.180150637039911
-        ],
-        [
-          4.8603419030611255,
-          -1.17012094427565
-        ],
-        [
-          4.914392555774772,
-          -1.1568765423414218
-        ],
-        [
-          4.968443208488419,
-          -1.1429348427694177
-        ],
-        [
-          5.022493861202066,
-          -1.1309812921532647
-        ],
-        [
-          5.076544513915713,
-          -1.1226014019038326
-        ],
-        [
-          5.13059516662936,
-          -1.117636264581821
-        ],
-        [
-          5.1846458193430065,
-          -1.1144029033849814
-        ],
-        [
-          5.238696472056653,
-          -1.1105957179817565
-        ],
-        [
-          5.2927471247703,
-          -1.1043874742105837
-        ],
-        [
-          5.342460668455986,
-          -1.0961260140294686
-        ],
-        [
-          5.392174212141671,
-          -1.086031667712393
-        ],
-        [
-          5.441887755827357,
-          -1.075257308066209
-        ],
-        [
-          5.491601299513042,
-          -1.0650856572531429
-        ],
-        [
-          5.554603109165186,
-          -1.0544627452531437
-        ],
-        [
-          5.617604918817331,
-          -1.0469556849925772
-        ],
-        [
-          5.6677507107483684,
-          -1.0428459375259742
-        ],
-        [
-          5.717896502679406,
-          -1.0393630330527224
-        ],
-        [
-          5.768042294610444,
-          -1.0354093925672687
-        ],
-        [
-          5.818188086541482,
-          -1.0300980750421684
-        ],
-        [
-          5.878315251829882,
-          -1.0214981352307595
-        ],
-        [
-          5.928299499698518,
-          -1.012733194503525
-        ],
-        [
-          5.978283747567154,
-          -1.0033336870695633
-        ],
-        [
-          6.02826799543579,
-          -0.9942585083407536
-        ],
-        [
-          6.078252243304426,
-          -0.9863280977111075
-        ],
-        [
-          6.14293081584079,
-          -0.9782743676218195
-        ],
-        [
-          6.196765840796611,
-          -0.9733481495900291
-        ],
-        [
-          6.250600865752432,
-          -0.9692060676648835
-        ],
-        [
-          6.304435890708253,
-          -0.9650311633978119
-        ],
-        [
-          6.3582709156640735,
-          -0.9600590999149947
-        ],
-        [
-          6.433461438883678,
-          -0.9500776117386822
-        ],
-        [
-          6.493499513622796,
-          -0.9395007806168363
-        ],
-        [
-          6.553537588361913,
-          -0.9281317069574346
-        ],
-        [
-          6.613575663101031,
-          -0.9169674644289922
-        ],
-        [
-          6.6736137378401486,
-          -0.9069018443734405
-        ],
-        [
-          6.752474107792829,
-          -0.8958932434382207
-        ],
-        [
-          6.813959694855546,
-          -0.8890535715502295
-        ],
-        [
-          6.875445281918263,
-          -0.8830851409112748
-        ],
-        [
-          6.93693086898098,
-          -0.8770852867269576
-        ],
-        [
-          6.998416456043697,
-          -0.8702600141945984
-        ],
-        [
-          7.079711027784927,
-          -0.859453143351748
-        ],
-        [
-          7.1413765714336215,
-          -0.8499221163898785
-        ],
-        [
-          7.203042115082316,
-          -0.8399132828100901
-        ],
-        [
-          7.264707658731011,
-          -0.8302458198132201
-        ],
-        [
-          7.326373202379705,
-          -0.8215661429011727
-        ],
-        [
-          7.4088916340702395,
-          -0.8120483599964152
-        ],
-        [
-          7.471438984396619,
-          -0.8064209033366541
-        ],
-        [
-          7.533986334722999,
-          -0.8014417421784941
-        ],
-        [
-          7.596533685049379,
-          -0.7961807408861548
-        ],
-        [
-          7.659081035375759,
-          -0.789726964052839
-        ],
-        [
-          7.748666795076123,
-          -0.7774228559133671
-        ],
-        [
-          7.759103537845691,
-          -0.7757433420451283
-        ],
-        [
-          7.769540280615259,
-          -0.774063948621954
-        ],
-        [
-          7.779977023384827,
-          -0.7723927096608989
-        ],
-        [
-          7.800850508923962,
-          -0.7691045304519051
-        ],
-        [
-          7.821723994463097,
-          -0.7659124992453266
-        ],
-        [
-          7.842597480002232,
-          -0.7628506251391891
-        ],
-        [
-          7.900172892552435,
-          -0.7552200853360465
-        ],
-        [
-          7.957748305102638,
-          -0.74893424560813
-        ],
-        [
-          8.01532371765284,
-          -0.743942639458522
-        ],
-        [
-          8.072899130203044,
-          -0.7398730947908758
-        ],
-        [
-          8.14886572486838,
-          -0.734977523164394
-        ],
-        [
-          8.224832319533714,
-          -0.7294345336483892
-        ],
-        [
-          8.30079891419905,
-          -0.722341313335721
-        ],
-        [
-          8.376765508864384,
-          -0.7136058918158787
-        ],
-        [
-          8.45273210352972,
-          -0.7038987634423366
-        ],
-        [
-          8.5564809550127,
-          -0.690958363832975
-        ],
-        [
-          8.632458997358304,
-          -0.6830928072755262
-        ],
-        [
-          8.708437039703908,
-          -0.6769546938758506
-        ],
-        [
-          8.784415082049511,
-          -0.6721486208473484
-        ],
-        [
-          8.860393124395115,
-          -0.6676602710582815
-        ],
-        [
-          8.936371166740718,
-          -0.6624093212432076
-        ],
-        [
-          9.012349209086322,
-          -0.6558169738315887
-        ],
-        [
-          9.088327251431926,
-          -0.6479781889906735
-        ],
-        [
-          9.16430529377753,
-          -0.639581950827975
-        ],
-        [
-          9.255988954542772,
-          -0.6299819317706459
-        ],
-        [
-          9.329184490076974,
-          -0.6235437305128178
-        ],
-        [
-          9.402380025611176,
-          -0.618300417557387
-        ],
-        [
-          9.475575561145378,
-          -0.6138984333859077
-        ],
-        [
-          9.54877109667958,
-          -0.6096938287159608
-        ],
-        [
-          9.621966632213782,
-          -0.605049876199339
-        ],
-        [
-          9.69992497595067,
-          -0.5993139838242125
-        ],
-        [
-          9.77788331968756,
-          -0.5927801460200499
-        ],
-        [
-          9.855841663424448,
-          -0.5857441138181014
-        ],
-        [
-          9.933800007161336,
-          -0.578711251722106
-        ],
-        [
-          10.011758350898225,
-          -0.5722033909496627
-        ],
-        [
-          10.089716694635113,
-          -0.566396902332456
-        ],
-        [
-          10.167675038372002,
-          -0.5613533500373349
-        ],
-        [
-          10.260259956542143,
-          -0.5560610574521703
-        ],
-        [
-          10.331983881553601,
-          -0.5522005232963152
-        ],
-        [
-          10.403707806565059,
-          -0.548282528512164
-        ],
-        [
-          10.475431731576517,
-          -0.5441529606471442
-        ],
-        [
-          10.570210949134573,
-          -0.538225890630279
-        ],
-        [
-          10.664990166692629,
-          -0.531682836894577
-        ],
-        [
-          10.759769384250685,
-          -0.5247296623881015
-        ],
-        [
-          10.854548601808741,
-          -0.5177422314697935
-        ],
-        [
-          10.949327819366797,
-          -0.5111527577707555
-        ],
-        [
-          11.044107036924853,
-          -0.5052503354706384
-        ],
-        [
-          11.138886254482909,
-          -0.5000658450453488
-        ],
-        [
-          11.223078569708694,
-          -0.49587585889541796
-        ],
-        [
-          11.307270884934479,
-          -0.49181079145934037
-        ],
-        [
-          11.391463200160263,
-          -0.48764434069517737
-        ],
-        [
-          11.526298565803183,
-          -0.4804950935803378
-        ],
-        [
-          11.629928166907957,
-          -0.4744185176485294
-        ],
-        [
-          11.733557768012732,
-          -0.4679572034237254
-        ],
-        [
-          11.837187369117506,
-          -0.4614219109506401
-        ],
-        [
-          11.940816970222281,
-          -0.4551600332740213
-        ],
-        [
-          12.064752353445058,
-          -0.4483980672165875
-        ],
-        [
-          12.188687736667836,
-          -0.4424481045083948
-        ],
-        [
-          12.312623119890613,
-          -0.43704474868375875
-        ],
-        [
-          12.43655850311339,
-          -0.43173594078339095
-        ],
-        [
-          12.560493886336168,
-          -0.4261250774589691
-        ],
-        [
-          12.684429269558946,
-          -0.420024340517108
-        ],
-        [
-          12.808364652781723,
-          -0.41351085438241864
-        ],
-        [
-          12.831782867710663,
-          -0.41224896155289215
-        ],
-        [
-          12.855201082639603,
-          -0.410986321287226
-        ],
-        [
-          12.878619297568543,
-          -0.4097263045054218
-        ],
-        [
-          12.925455727426423,
-          -0.40722877439790883
-        ],
-        [
-          12.972292157284302,
-          -0.40477359585924844
-        ],
-        [
-          13.019128587142182,
-          -0.4023759603352117
-        ],
-        [
-          13.153906925069139,
-          -0.39587234088225065
-        ],
-        [
-          13.288685262996095,
-          -0.38998354138215374
-        ],
-        [
-          13.423463600923052,
-          -0.38458863766910767
-        ],
-        [
-          13.558241938850008,
-          -0.37939143907938466
-        ],
-        [
-          13.693020276776965,
-          -0.3740971224587477
-        ],
-        [
-          13.827798614703921,
-          -0.36851542305777407
-        ],
-        [
-          13.962576952630878,
-          -0.3626387770731605
-        ],
-        [
-          14.097355290557834,
-          -0.3566138870819149
-        ],
-        [
-          14.23213362848479,
-          -0.3506660168883742
-        ],
-        [
-          14.366911966411747,
-          -0.34500544117356946
-        ],
-        [
-          14.54025856584105,
-          -0.3382714972778298
-        ],
-        [
-          14.682392980564643,
-          -0.33319557216068807
-        ],
-        [
-          14.824527395288236,
-          -0.3283476975503554
-        ],
-        [
-          14.966661810011828,
-          -0.32353053026211787
-        ],
-        [
-          15.108796224735421,
-          -0.31858902044286985
-        ],
-        [
-          15.286616031474669,
-          -0.31217336191959233
-        ],
-        [
-          15.464435838213916,
-          -0.3055678049686572
-        ],
-        [
-          15.642255644953163,
-          -0.2989776279345966
-        ],
-        [
-          15.82007545169241,
-          -0.29265029928040054
-        ],
-        [
-          15.997895258431658,
-          -0.286733955568117
-        ],
-        [
-          16.175715065170905,
-          -0.2812525832320478
-        ],
-        [
-          16.353534871910153,
-          -0.27607849557526576
-        ],
-        [
-          16.5313546786494,
-          -0.2710078819542483
-        ],
-        [
-          16.709174485388647,
-          -0.2658615042971122
-        ],
-        [
-          16.886994292127895,
-          -0.260533675628118
-        ],
-        [
-          17.0827216691956,
-          -0.25450583174757613
-        ],
-        [
-          17.245756216665097,
-          -0.2494519880635182
-        ],
-        [
-          17.408790764134594,
-          -0.24451450373585448
-        ],
-        [
-          17.57182531160409,
-          -0.23980718764317244
-        ],
-        [
-          17.734859859073588,
-          -0.23539220535733696
-        ],
-        [
-          17.87633414755382,
-          -0.231785499056544
-        ],
-        [
-          17.989632326456782,
-          -0.22902124038268656
-        ],
-        [
-          18.102930505359744,
-          -0.2263253813103887
-        ],
-        [
-          18.216228684262706,
-          -0.2236870058458189
-        ],
-        [
-          18.392123725075212,
-          -0.2196452207604631
-        ],
-        [
-          18.568018765887718,
-          -0.2156083412065195
-        ],
-        [
-          18.743913806700224,
-          -0.21153077947046928
-        ],
-        [
-          18.91980884751273,
-          -0.2074339322749581
-        ],
-        [
-          19.13456671816614,
-          -0.20245796668440974
-        ],
-        [
-          19.349324588819552,
-          -0.19762137190625184
-        ],
-        [
-          19.564082459472964,
-          -0.19302711995519983
-        ],
-        [
-          19.778840330126375,
-          -0.18872933113050738
-        ],
-        [
-          19.993598200779786,
-          -0.18473662795786572
-        ],
-        [
-          20.208356071433197,
-          -0.18100662142826351
-        ],
-        [
-          20.42311394208661,
-          -0.17749063812839871
-        ],
-        [
-          20.63787181274002,
-          -0.17416458726998885
-        ],
-        [
-          20.89524769419444,
-          -0.17040150231535067
-        ],
-        [
-          21.152623575648857,
-          -0.1668972646018383
-        ],
-        [
-          21.409999457103275,
-          -0.16369104788051425
-        ],
-        [
-          21.667375338557694,
-          -0.1608132726071454
-        ],
-        [
-          21.924751220012112,
-          -0.15827517770876876
-        ],
-        [
-          22.18212710146653,
-          -0.15607489091820614
-        ],
-        [
-          22.469164792221026,
-          -0.15401059241687953
-        ],
-        [
-          22.75620248297552,
-          -0.15231847108523233
-        ],
-        [
-          23.043240173730016,
-          -0.15093663942465074
-        ],
-        [
-          23.33027786448451,
-          -0.14976754268995318
-        ],
-        [
-          23.617315555239006,
-          -0.1486670987238643
-        ],
-        [
-          23.9043532459935,
-          -0.14744180358917092
-        ],
-        [
-          24.191390936747997,
-          -0.14585884726913978
-        ],
-        [
-          24.419341542299552,
-          -0.1441588145625916
-        ],
-        [
-          24.647292147851108,
-          -0.14188660645698992
-        ],
-        [
-          24.875242753402663,
-          -0.13883895058187345
-        ],
-        [
-          25.10319335895422,
-          -0.13475257762777115
-        ],
-        [
-          25.331143964505774,
-          -0.12928019573683658
-        ],
-        [
-          25.51872139829633,
-          -0.12341385793153936
-        ],
-        [
-          25.706298832086883,
-          -0.11597132308178537
-        ],
-        [
-          25.884966627110675,
-          -0.10708070594518881
-        ],
-        [
-          25.88571428571429,
-          -0.1070393422168503
-        ],
-        [
-          25.891724887187262,
-          -0.10670452366399807
-        ],
-        [
-          25.897735488660235,
-          -0.10636734196124653
-        ],
-        [
-          25.909756691606184,
-          -0.10568774532874281
-        ],
-        [
-          25.921777894552132,
-          -0.10499855644798739
-        ],
-        [
-          25.93379909749808,
-          -0.10429969200189149
-        ],
-        [
-          26.05401112695755,
-          -0.09676253458925554
-        ],
-        [
-          26.17422315641702,
-          -0.08818772801055075
-        ],
-        [
-          26.29443518587649,
-          -0.07855382207967598
-        ],
-        [
-          26.41464721533596,
-          -0.0679047648064175
-        ],
-        [
-          26.590536971802308,
-          -0.05080549709130916
-        ],
-        [
-          26.766426728268655,
-          -0.03276965213469696
-        ],
-        [
-          26.942316484735002,
-          -0.015458634324874154
-        ],
-        [
-          27.11820624120135,
-          -0.0014154420432648251
-        ],
-        [
-          27.294095997667696,
-          0.005923093207069741
-        ],
-        [
-          27.38571428571429,
-          0.005728487676795346
-        ],
-        [
-          27.403707346930535,
-          -7.189084516233163
-        ],
-        [
-          27.42170040814678,
-          -7.116746602076663
-        ],
-        [
-          27.457686530579274,
-          -6.974910347077432
-        ],
-        [
-          27.493672653011767,
-          -6.837770691957231
-        ],
-        [
-          27.52965877544426,
-          -6.705121681747425
-        ],
-        [
-          27.722358182653522,
-          -6.063765077877533
-        ],
-        [
-          27.915057589862784,
-          -5.520494625839216
-        ],
-        [
-          28.107756997072045,
-          -5.0559418133424225
-        ],
-        [
-          28.300456404281306,
-          -4.65507639187852
-        ],
-        [
-          28.59167900359794,
-          -4.1445870359856745
-        ],
-        [
-          28.882901602914572,
-          -3.722868991598554
-        ],
-        [
-          29.174124202231205,
-          -3.3682714851703204
-        ],
-        [
-          29.465346801547838,
-          -3.065039118545348
-        ],
-        [
-          29.75656940086447,
-          -2.8017546196728667
-        ],
-        [
-          30.25579246872472,
-          -2.4203138718238093
-        ],
-        [
-          30.75501553658497,
-          -2.1039447443244326
-        ],
-        [
-          31.25423860444522,
-          -1.8349811866971912
-        ],
-        [
-          31.75346167230547,
-          -1.6027344566831758
-        ],
-        [
-          32.25268474016572,
-          -1.400265922852595
-        ],
-        [
-          32.75190780802597,
-          -1.2228350435649145
-        ],
-        [
-          33.48826295234864,
-          -0.9998117456826296
-        ],
-        [
-          34.224618096671314,
-          -0.8157099243570536
-        ],
-        [
-          34.96097324099399,
-          -0.6641490531218744
-        ],
-        [
-          35.69732838531666,
-          -0.5397948455406036
-        ],
-        [
-          36.43368352963933,
-          -0.4380917916211684
-        ],
-        [
-          37.18331742700439,
-          -0.3538052340126997
-        ],
-        [
-          37.93295132436945,
-          -0.28548155162804734
-        ],
-        [
-          38.682585221734506,
-          -0.23019880001051476
-        ],
-        [
-          39.432219119099564,
-          -0.1855301252039827
-        ],
-        [
-          40.18185301646462,
-          -0.14947494368497313
-        ],
-        [
-          41.55565606299418,
-          -0.10050661288055886
-        ],
-        [
-          42.92945910952374,
-          -0.06755934262692434
-        ],
-        [
-          44.3032621560533,
-          -0.045411351384636596
-        ],
-        [
-          45.67706520258286,
-          -0.030514072669111065
-        ],
-        [
-          47.05086824911242,
-          -0.02050143364600421
-        ],
-        [
-          48.62323521534373,
-          -0.01300082612844861
-        ],
-        [
-          50.19560218157505,
-          -0.00825039472048601
-        ],
-        [
-          51.76796914780636,
-          -0.0052363103941847145
-        ],
-        [
-          53.340336114037676,
-          -0.003321101847121274
-        ],
-        [
-          54.91270308026899,
-          -0.0021070330109046217
-        ],
-        [
-          55.86204148248446,
-          -0.0016013336329834277
-        ],
-        [
-          56.811379884699925,
-          -0.001215849191677566
-        ],
-        [
-          57.76071828691539,
-          -0.0009230948063548198
-        ],
-        [
-          58.71005668913086,
-          -0.0007008492093750455
-        ],
-        [
-          59.701612671241776,
-          -0.0005244737056106663
-        ],
-        [
-          60.69316865335269,
-          -0.000392642565215425
-        ],
-        [
-          61.68472463546361,
-          -0.00029403025991250767
-        ],
-        [
-          63.019700273431596,
-          -0.00019892426112565371
-        ],
-        [
-          64.35467591139958,
-          -0.00013481050376683428
-        ],
-        [
-          65.68965154936757,
-          -9.14031036119811e-05
-        ],
-        [
-          67.66870000169779,
-          -5.13509959977551e-05
-        ],
-        [
-          69.647748454028,
-          -2.9491335546683263e-05
-        ],
-        [
-          71.62679690635822,
-          -1.709747795490881e-05
-        ],
-        [
-          73.60427163292789,
-          -9.848182228705874e-06
-        ],
-        [
-          75.58174635949756,
-          -5.63571248961851e-06
-        ],
-        [
-          77.55922108606723,
-          -3.2275773034852226e-06
-        ],
-        [
-          83.74360774187622,
-          -3.5017194499299367e-06
-        ],
-        [
-          89.92799439768521,
-          -1.3077329028205682e-05
-        ],
-        [
-          91.47409106163745,
-          -1.224328626341213e-05
-        ],
-        [
-          93.0201877255897,
-          -7.723413098874781e-06
-        ],
-        [
-          94.56628438954193,
-          -4.605514809045021e-06
-        ],
-        [
-          95.55174469780209,
-          -3.431460686211311e-06
-        ],
-        [
-          96.53720500606225,
-          -2.5738854431608175e-06
-        ],
-        [
-          97.52266531432241,
-          -1.92843039620439e-06
-        ],
-        [
-          98.50866761324593,
-          -1.4439705285939426e-06
-        ],
-        [
-          104.229915181177,
-          6.645505195349358e-08
-        ],
-        [
-          109.95116274910808,
-          2.7033724538483024e-07
-        ],
-        [
-          115.67241031703915,
-          1.5989089056105462e-07
-        ],
-        [
-          123.80427445904986,
-          -1.304575278805237e-07
-        ],
-        [
-          131.93613860106058,
-          -3.3101865342998065e-07
-        ],
-        [
-          140.0680027430713,
-          -2.2310776286267322e-07
-        ],
-        [
-          148.19986688508203,
-          -9.225590062453385e-08
-        ],
-        [
-          158.3904761904762,
-          8.129778015743247e-09
-        ],
-        [
-          158.5093989588007,
-          7.855214272231584e-09
-        ],
-        [
-          158.62832172712518,
-          7.589921117128932e-09
-        ],
-        [
-          159.8904761904762,
-          5.217587064699458e-09
-        ],
-        [
-          159.89288732694692,
-          5.148497928697321e-08
-        ],
-        [
-          159.89529846341765,
-          5.080790013829345e-08
-        ],
-        [
-          159.90012073635913,
-          4.9484928873977515e-08
-        ],
-        [
-          159.9049430093006,
-          4.821377078677698e-08
-        ],
-        [
-          159.9097652822421,
-          4.699175038978097e-08
-        ],
-        [
-          159.93243780659526,
-          4.183649790227221e-08
-        ],
-        [
-          159.95511033094843,
-          3.7497105823064005e-08
-        ],
-        [
-          159.9777828553016,
-          3.381056948316818e-08
-        ],
-        [
-          160.00045537965477,
-          3.065207482192926e-08
-        ],
-        [
-          160.0346633693688,
-          2.6677410735071566e-08
-        ],
-        [
-          160.0688713590828,
-          2.3444445419053385e-08
-        ],
-        [
-          160.10307934879683,
-          2.077944763803392e-08
-        ],
-        [
-          160.13728733851084,
-          1.855578884954482e-08
-        ],
-        [
-          160.17149532822486,
-          1.668069355605975e-08
-        ],
-        [
-          160.23106728260558,
-          1.4049202173118642e-08
-        ],
-        [
-          160.2906392369863,
-          1.2012978765681906e-08
-        ],
-        [
-          160.350211191367,
-          1.0402119106461984e-08
-        ],
-        [
-          160.40978314574772,
-          9.10490840259147e-09
-        ],
-        [
-          160.46935510012844,
-          8.043655258730879e-09
-        ],
-        [
-          160.52892705450915,
-          7.163172789788889e-09
-        ],
-        [
-          160.6259323588013,
-          6.017630686561312e-09
-        ],
-        [
-          160.72293766309343,
-          5.130972893954108e-09
-        ],
-        [
-          160.81994296738557,
-          4.4279870517461485e-09
-        ],
-        [
-          160.9169482716777,
-          3.8591470085612454e-09
-        ],
-        [
-          161.01395357596985,
-          3.390675039877467e-09
-        ],
-        [
-          161.110958880262,
-          2.998979266007755e-09
-        ],
-        [
-          161.26736304673776,
-          2.4881639252077247e-09
-        ],
-        [
-          161.42376721321352,
-          2.0862461577598846e-09
-        ],
-        [
-          161.5801713796893,
-          1.76312128691286e-09
-        ],
-        [
-          161.73657554616506,
-          1.4988164908521256e-09
-        ],
-        [
-          161.89297971264082,
-          1.2796893498933586e-09
-        ],
-        [
-          162.11653214894974,
-          1.0264107417906874e-09
-        ],
-        [
-          162.34008458525867,
-          8.269494977990728e-10
-        ],
-        [
-          162.5636370215676,
-          6.681853554398109e-10
-        ],
-        [
-          162.7871894578765,
-          5.409241963066703e-10
-        ],
-        [
-          163.01074189418543,
-          4.3845679383132495e-10
-        ],
-        [
-          163.3020518484637,
-          3.33936459927334e-10
-        ],
-        [
-          163.59336180274195,
-          2.5456411910827e-10
-        ],
-        [
-          163.88467175702021,
-          1.941291286834244e-10
-        ],
-        [
-          164.17598171129848,
-          1.4808244866866392e-10
-        ],
-        [
-          164.4850936705858,
-          1.1089167107771359e-10
-        ],
-        [
-          164.79420562987312,
-          8.308840904442936e-11
-        ],
-        [
-          165.10331758916044,
-          6.227964985614363e-11
-        ],
-        [
-          165.4129391221861,
-          4.66609767081322e-11
-        ],
-        [
-          165.72256065521174,
-          3.49592625173585e-11
-        ],
-        [
-          166.03218218823739,
-          2.6192335993272427e-11
-        ],
-        [
-          166.34184757413777,
-          1.962322393080208e-11
-        ],
-        [
-          167.93141144685217,
-          8.681139967746939e-13
-        ],
-        [
-          169.52097531956656,
-          -2.7136636150067907e-12
-        ],
-        [
-          171.11053919228095,
-          -1.9697063691683165e-12
-        ],
-        [
-          175.76088994831585,
-          -1.3676948279243611e-12
-        ],
-        [
-          180.41124070435075,
-          -3.014889613144315e-13
-        ],
-        [
-          185.06159146038564,
-          1.3736037323103848e-14
-        ],
-        [
-          202.12571753179242,
-          1.4054503960673585e-13
-        ],
-        [
-          219.1898436031992,
-          1.5800130843905424e-14
-        ],
-        [
-          236.25396967460597,
-          -2.2289210148175082e-15
-        ],
-        [
-          261.9195710352043,
-          -8.96530559520047e-14
-        ],
-        [
-          287.5851723958026,
-          -9.001476903519086e-14
-        ],
-        [
-          298.2290954115797,
-          -8.076128204100438e-14
-        ]
-      ],
-      "title": "Ay (M/S\u00b2) x Time (S)",
-      "inputs": [
-        "Time (s)"
-      ],
-      "outputs": [
-        "Ay (m/s\u00b2)"
-      ],
-      "interpolation": "spline",
-      "extrapolation": "zero",
-      "signature": {
-        "module": "rocketpy.mathutils.function",
-        "name": "Function"
-      }
-    },
-    "az": {
-      "source": [
-        [
-          0.0,
-          0.0
-        ],
-        [
-          0.0014095582940420635,
-          0.0
-        ],
-        [
-          0.002819116588084127,
-          0.0
-        ],
-        [
-          0.005638233176168254,
-          0.0
-        ],
-        [
-          0.008457349764252381,
-          0.0
-        ],
-        [
-          0.011276466352336508,
-          0.0
-        ],
-        [
-          0.03946763223317778,
-          0.0
-        ],
-        [
-          0.04085528032083424,
-          0.0
-        ],
-        [
-          0.042242928408490706,
-          0.0
-        ],
-        [
-          0.045018224583803626,
-          0.0
-        ],
-        [
-          0.047793520759116546,
-          0.0
-        ],
-        [
-          0.05056881693442947,
-          0.0
-        ],
-        [
-          0.051535065794346184,
-          0.0
-        ],
-        [
-          0.0525013146542629,
-          0.0
-        ],
-        [
-          0.05443381237409633,
-          0.0
-        ],
-        [
-          0.056366310093929756,
-          0.0
-        ],
-        [
-          0.05829880781376318,
-          1.9507039378501638
-        ],
-        [
-          0.06066778422868188,
-          6.602937321014033
-        ],
-        [
-          0.06303676064360057,
-          11.25547072940448
-        ],
-        [
-          0.06540573705851926,
-          15.90843021407371
-        ],
-        [
-          0.08909550120770625,
-          62.472020304734805
-        ],
-        [
-          0.09280001741842829,
-          70.7868902208969
-        ],
-        [
-          0.09574786203389758,
-          80.36704380552307
-        ],
-        [
-          0.09869570664936687,
-          89.95093682683311
-        ],
-        [
-          0.10099207719472714,
-          94.40410211746061
-        ],
-        [
-          0.1032884477400874,
-          94.89359985683348
-        ],
-        [
-          0.10558481828544766,
-          95.38325599850599
-        ],
-        [
-          0.11017755937616817,
-          96.36322131004694
-        ],
-        [
-          0.11477030046688869,
-          97.34392266165172
-        ],
-        [
-          0.1193630415576092,
-          98.32501843517748
-        ],
-        [
-          0.13127045763130013,
-          100.87131924812677
-        ],
-        [
-          0.14317787370499105,
-          103.4219627661537
-        ],
-        [
-          0.14995992644651876,
-          104.87680541227698
-        ],
-        [
-          0.1542011028620784,
-          103.16021223470806
-        ],
-        [
-          0.15844227927763802,
-          101.41720228512382
-        ],
-        [
-          0.16268345569319764,
-          99.67267891849643
-        ],
-        [
-          0.1711658085243169,
-          96.18093999768352
-        ],
-        [
-          0.17964816135543615,
-          92.683811284943
-        ],
-        [
-          0.1881305141865554,
-          89.18230989622099
-        ],
-        [
-          0.19446574773727407,
-          86.5645191077393
-        ],
-        [
-          0.20080098128799273,
-          84.29985617642407
-        ],
-        [
-          0.2056611859339936,
-          84.44655788356837
-        ],
-        [
-          0.21052139057999447,
-          84.59329757701286
-        ],
-        [
-          0.21538159522599534,
-          84.74007904389897
-        ],
-        [
-          0.22510200451799706,
-          85.03381566102952
-        ],
-        [
-          0.23482241380999877,
-          85.32790138897286
-        ],
-        [
-          0.24454282310200048,
-          85.6220426897536
-        ],
-        [
-          0.2542632323940022,
-          85.91623762960906
-        ],
-        [
-          0.35146732531401936,
-          88.86838668321992
-        ],
-        [
-          0.3632465986442917,
-          89.22748918318143
-        ],
-        [
-          0.3693545968582991,
-          89.3212961047029
-        ],
-        [
-          0.37546259507230645,
-          89.50766380364405
-        ],
-        [
-          0.3876785915003212,
-          89.88043580047281
-        ],
-        [
-          0.39989458792833593,
-          90.25338122618838
-        ],
-        [
-          0.4121105843563507,
-          90.62703577644731
-        ],
-        [
-          0.4714932108541475,
-          92.4463974458496
-        ],
-        [
-          0.5078257800637102,
-          93.434213496406
-        ],
-        [
-          0.5343429255049618,
-          93.78248106593861
-        ],
-        [
-          0.5608600709462134,
-          94.13017650477578
-        ],
-        [
-          0.587377216387465,
-          94.47730002772714
-        ],
-        [
-          0.6404115072699682,
-          95.16969363813514
-        ],
-        [
-          0.6934457981524714,
-          95.8595910455871
-        ],
-        [
-          0.7464800890349746,
-          96.54625136019465
-        ],
-        [
-          0.7995143799174779,
-          97.22955135514175
-        ],
-        [
-          0.8131556786423583,
-          97.40466428527998
-        ],
-        [
-          0.8267969773672387,
-          97.57966374535346
-        ],
-        [
-          0.8404382760921191,
-          97.75433793135711
-        ],
-        [
-          0.8773817713324279,
-          98.22606222677292
-        ],
-        [
-          0.9143252665727367,
-          98.69576013781115
-        ],
-        [
-          0.9512687618130455,
-          99.16332956442506
-        ],
-        [
-          0.9671044469204755,
-          99.36305330146763
-        ],
-        [
-          0.9987682629763311,
-          99.7609639203106
-        ],
-        [
-          1.0182059593067265,
-          99.77774766422192
-        ],
-        [
-          1.037643655637122,
-          99.77015600680078
-        ],
-        [
-          1.0570813519675175,
-          99.76120150334738
-        ],
-        [
-          1.0878522163238507,
-          99.74439769562835
-        ],
-        [
-          1.1186230806801838,
-          99.72429132695741
-        ],
-        [
-          1.1439344065815038,
-          99.70545351564357
-        ],
-        [
-          1.1692457324828238,
-          99.68437619355772
-        ],
-        [
-          1.1945570583841438,
-          99.6612870810414
-        ],
-        [
-          1.2316667865519533,
-          99.62361201788296
-        ],
-        [
-          1.2687765147197627,
-          99.58174419055679
-        ],
-        [
-          1.3058862428875722,
-          99.53587133123685
-        ],
-        [
-          1.3429959710553816,
-          99.48627071498962
-        ],
-        [
-          1.4022433435144068,
-          99.39987068237227
-        ],
-        [
-          1.447124093183637,
-          99.3291805182814
-        ],
-        [
-          1.4920048428528674,
-          99.25421949954048
-        ],
-        [
-          1.5261259080406766,
-          99.00590642729574
-        ],
-        [
-          1.5602469732284858,
-          98.69108332740151
-        ],
-        [
-          1.594368038416295,
-          98.37269634531377
-        ],
-        [
-          1.6284891036041043,
-          98.05069230010132
-        ],
-        [
-          1.6626101687919135,
-          97.72489069173882
-        ],
-        [
-          1.6967312339797227,
-          97.39491871006895
-        ],
-        [
-          1.730852299167532,
-          97.06034128768874
-        ],
-        [
-          1.770204581699234,
-          96.66813594796635
-        ],
-        [
-          1.809556864230936,
-          96.26869577371005
-        ],
-        [
-          1.8489091467626382,
-          95.86107056569543
-        ],
-        [
-          1.8882614292943403,
-          95.44522344869979
-        ],
-        [
-          1.9276137118260424,
-          95.01941944266159
-        ],
-        [
-          1.9669659943577444,
-          94.58179851331913
-        ],
-        [
-          2.0063182768894463,
-          94.10613931002766
-        ],
-        [
-          2.0456705594211484,
-          93.46653431362398
-        ],
-        [
-          2.0850228419528505,
-          92.81749707854242
-        ],
-        [
-          2.1243751244845526,
-          92.16021374818604
-        ],
-        [
-          2.1637274070162547,
-          91.49523494757446
-        ],
-        [
-          2.2030796895479567,
-          90.82216095347609
-        ],
-        [
-          2.242431972079659,
-          90.14261962665806
-        ],
-        [
-          2.281784254611361,
-          89.45737716728463
-        ],
-        [
-          2.321136537143063,
-          88.7662941102875
-        ],
-        [
-          2.360488819674765,
-          88.06873601169556
-        ],
-        [
-          2.399841102206467,
-          87.36286240584116
-        ],
-        [
-          2.4391933847381693,
-          86.64914466407836
-        ],
-        [
-          2.4785456672698714,
-          85.92456367143907
-        ],
-        [
-          2.5178979498015734,
-          85.32142991607381
-        ],
-        [
-          2.5572502323332755,
-          84.91515099776525
-        ],
-        [
-          2.5966025148649776,
-          84.51934709774913
-        ],
-        [
-          2.6359547973966797,
-          84.11881470225283
-        ],
-        [
-          2.675307079928382,
-          83.71379063215028
-        ],
-        [
-          2.714659362460084,
-          83.30572926831039
-        ],
-        [
-          2.7466638251883717,
-          82.97254425992904
-        ],
-        [
-          2.7786682879166595,
-          82.63883141312559
-        ],
-        [
-          2.8106727506449474,
-          82.30495654392293
-        ],
-        [
-          2.842677213373235,
-          81.97089412273498
-        ],
-        [
-          2.874681676101523,
-          81.63631873217066
-        ],
-        [
-          2.9108918137851214,
-          81.04021387767183
-        ],
-        [
-          2.9402847513530936,
-          80.03876082139271
-        ],
-        [
-          2.9637983886571173,
-          79.19212906310518
-        ],
-        [
-          2.987312025961141,
-          78.34200687096234
-        ],
-        [
-          2.9914721939592726,
-          78.19113546419356
-        ],
-        [
-          2.995632361957404,
-          78.04016293250909
-        ],
-        [
-          2.9997925299555357,
-          77.88903704600837
-        ],
-        [
-          3.0010806713261253,
-          77.750301910089
-        ],
-        [
-          3.002368812696715,
-          77.45196515877895
-        ],
-        [
-          3.0049450954378942,
-          76.85527429775378
-        ],
-        [
-          3.0075213781790735,
-          76.25853088235239
-        ],
-        [
-          3.031179520120233,
-          70.7760936756634
-        ],
-        [
-          3.0548376620613924,
-          65.29082895768744
-        ],
-        [
-          3.078495804002552,
-          59.8058715793271
-        ],
-        [
-          3.1021539459437113,
-          54.3226235709954
-        ],
-        [
-          3.1205915242496687,
-          50.051333598564106
-        ],
-        [
-          3.139029102555626,
-          45.782902059533185
-        ],
-        [
-          3.1574666808615834,
-          41.51813308816302
-        ],
-        [
-          3.1943418374734978,
-          33.002610532307074
-        ],
-        [
-          3.223214302746968,
-          26.350602349483772
-        ],
-        [
-          3.252086768020438,
-          19.716026442192373
-        ],
-        [
-          3.2809592332939084,
-          13.100299323446178
-        ],
-        [
-          3.2861061530217075,
-          11.923050630286262
-        ],
-        [
-          3.2912530727495066,
-          10.74647080582523
-        ],
-        [
-          3.2963999924773058,
-          9.570568376531902
-        ],
-        [
-          3.3042992470019175,
-          8.201335282670767
-        ],
-        [
-          3.312198501526529,
-          7.329886163206055
-        ],
-        [
-          3.320097756051141,
-          6.45934791800068
-        ],
-        [
-          3.329990894740742,
-          5.370248110108393
-        ],
-        [
-          3.339884033430343,
-          4.282439679998998
-        ],
-        [
-          3.349777172119944,
-          3.1959117668259145
-        ],
-        [
-          3.3683253555356067,
-          1.1622035775485406
-        ],
-        [
-          3.3868735389512694,
-          -0.8668968919994322
-        ],
-        [
-          3.4020443640890705,
-          -2.427262195219818
-        ],
-        [
-          3.4113407650123997,
-          -2.8169370783956205
-        ],
-        [
-          3.420637165935729,
-          -3.206116642353213
-        ],
-        [
-          3.429933566859058,
-          -3.5948704678055936
-        ],
-        [
-          3.446308281894537,
-          -4.278661840056832
-        ],
-        [
-          3.4626829969300164,
-          -4.961213433326328
-        ],
-        [
-          3.4790577119654955,
-          -5.64255738321931
-        ],
-        [
-          3.5098113349838638,
-          -6.9186765740326805
-        ],
-        [
-          3.534175816549051,
-          -7.926376581568191
-        ],
-        [
-          3.558540298114238,
-          -8.930994991225832
-        ],
-        [
-          3.582904779679425,
-          -9.9323923367765
-        ],
-        [
-          3.615075076269808,
-          -11.249512074895277
-        ],
-        [
-          3.6472453728601906,
-          -12.560548065906753
-        ],
-        [
-          3.6794156694505733,
-          -13.865320823114864
-        ],
-        [
-          3.711585966040956,
-          -15.163829540368013
-        ],
-        [
-          3.7510748617223286,
-          -16.749268961267667
-        ],
-        [
-          3.790563757403701,
-          -18.32579854116308
-        ],
-        [
-          3.830052653085074,
-          -19.89415352659273
-        ],
-        [
-          3.862940498739986,
-          -21.194483973418986
-        ],
-        [
-          3.895828344394898,
-          -22.489633953951618
-        ],
-        [
-          3.901564462162616,
-          -22.67438743740994
-        ],
-        [
-          3.9073005799303346,
-          -22.653996547938586
-        ],
-        [
-          3.913036697698053,
-          -22.633641128413647
-        ],
-        [
-          3.924489906398398,
-          -22.59315389255346
-        ],
-        [
-          3.935943115098743,
-          -22.552870154257455
-        ],
-        [
-          3.947396323799088,
-          -22.51278882690066
-        ],
-        [
-          3.975516795322242,
-          -22.415176439278763
-        ],
-        [
-          4.003637266845396,
-          -22.318612095893474
-        ],
-        [
-          4.03175773836855,
-          -22.22297429142661
-        ],
-        [
-          4.071718134752553,
-          -22.088483558922054
-        ],
-        [
-          4.111678531136556,
-          -21.955410318561864
-        ],
-        [
-          4.151638927520558,
-          -21.823615625639402
-        ],
-        [
-          4.191599323904561,
-          -21.69313094021445
-        ],
-        [
-          4.247720558129715,
-          -21.512376522819068
-        ],
-        [
-          4.293788946145795,
-          -21.36656484507832
-        ],
-        [
-          4.3319865166419085,
-          -21.247704262827174
-        ],
-        [
-          4.370184087138022,
-          -21.13077491822768
-        ],
-        [
-          4.408381657634136,
-          -21.015708653900408
-        ],
-        [
-          4.44657922813025,
-          -20.902336490348237
-        ],
-        [
-          4.484776798626363,
-          -20.790443133412047
-        ],
-        [
-          4.527459427885128,
-          -20.666910963557804
-        ],
-        [
-          4.570142057143892,
-          -20.544758600321472
-        ],
-        [
-          4.612824686402656,
-          -20.44998249925147
-        ],
-        [
-          4.655507315661421,
-          -20.37053407504513
-        ],
-        [
-          4.698189944920185,
-          -20.291570157763477
-        ],
-        [
-          4.752240597633832,
-          -20.192543730689863
-        ],
-        [
-          4.806291250347479,
-          -20.094894625270832
-        ],
-        [
-          4.8603419030611255,
-          -19.998741332940604
-        ],
-        [
-          4.914392555774772,
-          -19.903954950604327
-        ],
-        [
-          4.968443208488419,
-          -19.810235666583782
-        ],
-        [
-          5.022493861202066,
-          -19.7172633768138
-        ],
-        [
-          5.076544513915713,
-          -19.62484257733055
-        ],
-        [
-          5.13059516662936,
-          -19.532977843122843
-        ],
-        [
-          5.1846458193430065,
-          -19.441848210041385
-        ],
-        [
-          5.238696472056653,
-          -19.351704915568444
-        ],
-        [
-          5.2927471247703,
-          -19.262746680740722
-        ],
-        [
-          5.342460668455986,
-          -19.18201389542966
-        ],
-        [
-          5.392174212141671,
-          -19.102244957990383
-        ],
-        [
-          5.441887755827357,
-          -19.023299009609865
-        ],
-        [
-          5.491601299513042,
-          -18.945019301660775
-        ],
-        [
-          5.554603109165186,
-          -18.84659539447031
-        ],
-        [
-          5.617604918817331,
-          -18.748957067347803
-        ],
-        [
-          5.6677507107483684,
-          -18.67183412478364
-        ],
-        [
-          5.717896502679406,
-          -18.595345659746165
-        ],
-        [
-          5.768042294610444,
-          -18.519611302513514
-        ],
-        [
-          5.818188086541482,
-          -18.44472751111648
-        ],
-        [
-          5.878315251829882,
-          -18.35610169730498
-        ],
-        [
-          5.928299499698518,
-          -18.28335647255609
-        ],
-        [
-          5.978283747567154,
-          -18.211350414350303
-        ],
-        [
-          6.02826799543579,
-          -18.13996293898668
-        ],
-        [
-          6.078252243304426,
-          -18.069089016871832
-        ],
-        [
-          6.14293081584079,
-          -17.97806730208097
-        ],
-        [
-          6.196765840796611,
-          -17.902899988789834
-        ],
-        [
-          6.250600865752432,
-          -17.827620261845485
-        ],
-        [
-          6.304435890708253,
-          -17.75295702611922
-        ],
-        [
-          6.3582709156640735,
-          -17.679116880863006
-        ],
-        [
-          6.433461438883678,
-          -17.5689076537199
-        ],
-        [
-          6.493499513622796,
-          -17.475127234282848
-        ],
-        [
-          6.553537588361913,
-          -17.382728773150586
-        ],
-        [
-          6.613575663101031,
-          -17.29177045173296
-        ],
-        [
-          6.6736137378401486,
-          -17.20229059487902
-        ],
-        [
-          6.752474107792829,
-          -17.08631719681387
-        ],
-        [
-          6.813959694855546,
-          -16.997276978608813
-        ],
-        [
-          6.875445281918263,
-          -16.90966325781073
-        ],
-        [
-          6.93693086898098,
-          -16.82322888380655
-        ],
-        [
-          6.998416456043697,
-          -16.738082259173993
-        ],
-        [
-          7.079711027784927,
-          -16.628017096520725
-        ],
-        [
-          7.1413765714336215,
-          -16.545976482840473
-        ],
-        [
-          7.203042115082316,
-          -16.465103790769557
-        ],
-        [
-          7.264707658731011,
-          -16.38563428516366
-        ],
-        [
-          7.326373202379705,
-          -16.307080433785835
-        ],
-        [
-          7.4088916340702395,
-          -16.20329635623348
-        ],
-        [
-          7.471438984396619,
-          -16.12597828159368
-        ],
-        [
-          7.533986334722999,
-          -16.049576718363934
-        ],
-        [
-          7.596533685049379,
-          -15.974192751698936
-        ],
-        [
-          7.659081035375759,
-          -15.900123942796666
-        ],
-        [
-          7.748666795076123,
-          -15.796241611601895
-        ],
-        [
-          7.759103537845691,
-          -15.784294648853209
-        ],
-        [
-          7.769540280615259,
-          -15.772373307605788
-        ],
-        [
-          7.779977023384827,
-          -15.760476492642074
-        ],
-        [
-          7.800850508923962,
-          -15.73675231543346
-        ],
-        [
-          7.821723994463097,
-          -15.713117242016724
-        ],
-        [
-          7.842597480002232,
-          -15.68959875734353
-        ],
-        [
-          7.900172892552435,
-          -15.625309939047375
-        ],
-        [
-          7.957748305102638,
-          -15.561592097156666
-        ],
-        [
-          8.01532371765284,
-          -15.498439439140162
-        ],
-        [
-          8.072899130203044,
-          -15.435965854449838
-        ],
-        [
-          8.14886572486838,
-          -15.354758799859804
-        ],
-        [
-          8.224832319533714,
-          -15.274839908310224
-        ],
-        [
-          8.30079891419905,
-          -15.196391824519491
-        ],
-        [
-          8.376765508864384,
-          -15.119484200234385
-        ],
-        [
-          8.45273210352972,
-          -15.04383857438898
-        ],
-        [
-          8.5564809550127,
-          -14.942838629396025
-        ],
-        [
-          8.632458997358304,
-          -14.870263312737123
-        ],
-        [
-          8.708437039703908,
-          -14.798497072659332
-        ],
-        [
-          8.784415082049511,
-          -14.727734489793619
-        ],
-        [
-          8.860393124395115,
-          -14.657978646751468
-        ],
-        [
-          8.936371166740718,
-          -14.58930329130341
-        ],
-        [
-          9.012349209086322,
-          -14.521909649276017
-        ],
-        [
-          9.088327251431926,
-          -14.455682690740565
-        ],
-        [
-          9.16430529377753,
-          -14.390457346139371
-        ],
-        [
-          9.255988954542772,
-          -14.313031591503478
-        ],
-        [
-          9.329184490076974,
-          -14.25202780739615
-        ],
-        [
-          9.402380025611176,
-          -14.191665635347425
-        ],
-        [
-          9.475575561145378,
-          -14.132075326831755
-        ],
-        [
-          9.54877109667958,
-          -14.073288506787161
-        ],
-        [
-          9.621966632213782,
-          -14.015326661342822
-        ],
-        [
-          9.69992497595067,
-          -13.954588488529744
-        ],
-        [
-          9.77788331968756,
-          -13.894886715910415
-        ],
-        [
-          9.855841663424448,
-          -13.836078650158276
-        ],
-        [
-          9.933800007161336,
-          -13.778439239843177
-        ],
-        [
-          10.011758350898225,
-          -13.722415177240206
-        ],
-        [
-          10.089716694635113,
-          -13.66703033070341
-        ],
-        [
-          10.167675038372002,
-          -13.612305772314802
-        ],
-        [
-          10.260259956542143,
-          -13.548485240343943
-        ],
-        [
-          10.331983881553601,
-          -13.499680417456961
-        ],
-        [
-          10.403707806565059,
-          -13.451460598632883
-        ],
-        [
-          10.475431731576517,
-          -13.403957934450085
-        ],
-        [
-          10.570210949134573,
-          -13.34211674643648
-        ],
-        [
-          10.664990166692629,
-          -13.281335204330947
-        ],
-        [
-          10.759769384250685,
-          -13.221692506189326
-        ],
-        [
-          10.854548601808741,
-          -13.16297415615443
-        ],
-        [
-          10.949327819366797,
-          -13.105151672121778
-        ],
-        [
-          11.044107036924853,
-          -13.04819222923824
-        ],
-        [
-          11.138886254482909,
-          -12.9919879657659
-        ],
-        [
-          11.223078569708694,
-          -12.942780712964858
-        ],
-        [
-          11.307270884934479,
-          -12.894251882405593
-        ],
-        [
-          11.391463200160263,
-          -12.846384334937468
-        ],
-        [
-          11.526298565803183,
-          -12.771237732440657
-        ],
-        [
-          11.629928166907957,
-          -12.714691908822115
-        ],
-        [
-          11.733557768012732,
-          -12.659174284331467
-        ],
-        [
-          11.837187369117506,
-          -12.604642576014381
-        ],
-        [
-          11.940816970222281,
-          -12.550951245359668
-        ],
-        [
-          12.064752353445058,
-          -12.487871416836136
-        ],
-        [
-          12.188687736667836,
-          -12.425885751699665
-        ],
-        [
-          12.312623119890613,
-          -12.365074542079261
-        ],
-        [
-          12.43655850311339,
-          -12.305435672070908
-        ],
-        [
-          12.560493886336168,
-          -12.247030866428156
-        ],
-        [
-          12.684429269558946,
-          -12.189865651353465
-        ],
-        [
-          12.808364652781723,
-          -12.133880981143735
-        ],
-        [
-          12.831782867710663,
-          -12.123441226373716
-        ],
-        [
-          12.855201082639603,
-          -12.11303907372405
-        ],
-        [
-          12.878619297568543,
-          -12.102673809843226
-        ],
-        [
-          12.925455727426423,
-          -12.082050833994725
-        ],
-        [
-          12.972292157284302,
-          -12.061568227028491
-        ],
-        [
-          13.019128587142182,
-          -12.041222220678534
-        ],
-        [
-          13.153906925069139,
-          -11.983496268532555
-        ],
-        [
-          13.288685262996095,
-          -11.926857738712842
-        ],
-        [
-          13.423463600923052,
-          -11.871349130771709
-        ],
-        [
-          13.558241938850008,
-          -11.816950033386131
-        ],
-        [
-          13.693020276776965,
-          -11.763721176656878
-        ],
-        [
-          13.827798614703921,
-          -11.711647886389503
-        ],
-        [
-          13.962576952630878,
-          -11.660722522481636
-        ],
-        [
-          14.097355290557834,
-          -11.61089135887379
-        ],
-        [
-          14.23213362848479,
-          -11.56208268319527
-        ],
-        [
-          14.366911966411747,
-          -11.514250832236877
-        ],
-        [
-          14.54025856584105,
-          -11.454077070973943
-        ],
-        [
-          14.682392980564643,
-          -11.405851817680682
-        ],
-        [
-          14.824527395288236,
-          -11.358631523291034
-        ],
-        [
-          14.966661810011828,
-          -11.312437999480602
-        ],
-        [
-          15.108796224735421,
-          -11.267269907824154
-        ],
-        [
-          15.286616031474669,
-          -11.212202423393876
-        ],
-        [
-          15.464435838213916,
-          -11.15868461958062
-        ],
-        [
-          15.642255644953163,
-          -11.106610654615249
-        ],
-        [
-          15.82007545169241,
-          -11.055942649624063
-        ],
-        [
-          15.997895258431658,
-          -11.00655455986624
-        ],
-        [
-          16.175715065170905,
-          -10.95843726527875
-        ],
-        [
-          16.353534871910153,
-          -10.911570597009606
-        ],
-        [
-          16.5313546786494,
-          -10.86595719796962
-        ],
-        [
-          16.709174485388647,
-          -10.821639455070743
-        ],
-        [
-          16.886994292127895,
-          -10.77857337169585
-        ],
-        [
-          17.0827216691956,
-          -10.732623055758715
-        ],
-        [
-          17.245756216665097,
-          -10.695436193035762
-        ],
-        [
-          17.408790764134594,
-          -10.659192503931434
-        ],
-        [
-          17.57182531160409,
-          -10.623837969608173
-        ],
-        [
-          17.734859859073588,
-          -10.589334126926591
-        ],
-        [
-          17.87633414755382,
-          -10.560071290983299
-        ],
-        [
-          17.989632326456782,
-          -10.53709085304487
-        ],
-        [
-          18.102930505359744,
-          -10.514502634212619
-        ],
-        [
-          18.216228684262706,
-          -10.492370326425062
-        ],
-        [
-          18.392123725075212,
-          -10.458801883560273
-        ],
-        [
-          18.568018765887718,
-          -10.426209634589886
-        ],
-        [
-          18.743913806700224,
-          -10.394565823083608
-        ],
-        [
-          18.91980884751273,
-          -10.363878160360343
-        ],
-        [
-          19.13456671816614,
-          -10.327625203739847
-        ],
-        [
-          19.349324588819552,
-          -10.292671170423274
-        ],
-        [
-          19.564082459472964,
-          -10.258940781509553
-        ],
-        [
-          19.778840330126375,
-          -10.226368350047736
-        ],
-        [
-          19.993598200779786,
-          -10.194937572561996
-        ],
-        [
-          20.208356071433197,
-          -10.164609713590208
-        ],
-        [
-          20.42311394208661,
-          -10.13536102814593
-        ],
-        [
-          20.63787181274002,
-          -10.107193005153048
-        ],
-        [
-          20.89524769419444,
-          -10.074786856575916
-        ],
-        [
-          21.152623575648857,
-          -10.04379623444854
-        ],
-        [
-          21.409999457103275,
-          -10.014148599527301
-        ],
-        [
-          21.667375338557694,
-          -9.98575096926459
-        ],
-        [
-          21.924751220012112,
-          -9.958507116857747
-        ],
-        [
-          22.18212710146653,
-          -9.93232579178932
-        ],
-        [
-          22.469164792221026,
-          -9.904264620224069
-        ],
-        [
-          22.75620248297552,
-          -9.877242345043758
-        ],
-        [
-          23.043240173730016,
-          -9.851090910720128
-        ],
-        [
-          23.33027786448451,
-          -9.825634471914983
-        ],
-        [
-          23.617315555239006,
-          -9.800684671706254
-        ],
-        [
-          23.9043532459935,
-          -9.77603715233231
-        ],
-        [
-          24.191390936747997,
-          -9.751474886770863
-        ],
-        [
-          24.419341542299552,
-          -9.731862909266317
-        ],
-        [
-          24.647292147851108,
-          -9.71200192416389
-        ],
-        [
-          24.875242753402663,
-          -9.69173214277804
-        ],
-        [
-          25.10319335895422,
-          -9.670890683381446
-        ],
-        [
-          25.331143964505774,
-          -9.6493580437817
-        ],
-        [
-          25.51872139829633,
-          -9.63112086928771
-        ],
-        [
-          25.706298832086883,
-          -9.612555121806086
-        ],
-        [
-          25.884966627110675,
-          -9.594876815465096
-        ],
-        [
-          25.88571428571429,
-          -9.594803535195235
-        ],
-        [
-          25.891724887187262,
-          -9.59421632515794
-        ],
-        [
-          25.897735488660235,
-          -9.593629755464763
-        ],
-        [
-          25.909756691606184,
-          -9.592455518786748
-        ],
-        [
-          25.921777894552132,
-          -9.591284139971698
-        ],
-        [
-          25.93379909749808,
-          -9.590115845741137
-        ],
-        [
-          26.05401112695755,
-          -9.578656982998003
-        ],
-        [
-          26.17422315641702,
-          -9.56780826579894
-        ],
-        [
-          26.29443518587649,
-          -9.557916611548448
-        ],
-        [
-          26.41464721533596,
-          -9.549404471188561
-        ],
-        [
-          26.590536971802308,
-          -9.540476161830032
-        ],
-        [
-          26.766426728268655,
-          -9.537309818288984
-        ],
-        [
-          26.942316484735002,
-          -9.541718244601464
-        ],
-        [
-          27.11820624120135,
-          -9.555296585670078
-        ],
-        [
-          27.294095997667696,
-          -9.579029265775723
-        ],
-        [
-          27.38571428571429,
-          -9.595445509941154
-        ],
-        [
-          27.403707346930535,
-          -0.8422186657865037
-        ],
-        [
-          27.42170040814678,
-          -0.8560467460106815
-        ],
-        [
-          27.457686530579274,
-          -0.8829975244587411
-        ],
-        [
-          27.493672653011767,
-          -0.9086025268730009
-        ],
-        [
-          27.52965877544426,
-          -0.932914033145965
-        ],
-        [
-          27.722358182653522,
-          -1.0429315439466624
-        ],
-        [
-          27.915057589862784,
-          -1.1237615430007541
-        ],
-        [
-          28.107756997072045,
-          -1.1804483094793496
-        ],
-        [
-          28.300456404281306,
-          -1.217040707648893
-        ],
-        [
-          28.59167900359794,
-          -1.2414506421513278
-        ],
-        [
-          28.882901602914572,
-          -1.2364267891894611
-        ],
-        [
-          29.174124202231205,
-          -1.2090236889034418
-        ],
-        [
-          29.465346801547838,
-          -1.1649909586268024
-        ],
-        [
-          29.75656940086447,
-          -1.1089490296284161
-        ],
-        [
-          30.25579246872472,
-          -0.9955059756527558
-        ],
-        [
-          30.75501553658497,
-          -0.8721531151707694
-        ],
-        [
-          31.25423860444522,
-          -0.7490922846401736
-        ],
-        [
-          31.75346167230547,
-          -0.6326578600706803
-        ],
-        [
-          32.25268474016572,
-          -0.5265755953164013
-        ],
-        [
-          32.75190780802597,
-          -0.4326750790540048
-        ],
-        [
-          33.48826295234864,
-          -0.3170221356951044
-        ],
-        [
-          34.224618096671314,
-          -0.22676166199058176
-        ],
-        [
-          34.96097324099399,
-          -0.15817885739179396
-        ],
-        [
-          35.69732838531666,
-          -0.10714499575275943
-        ],
-        [
-          36.43368352963933,
-          -0.06979427022341578
-        ],
-        [
-          37.18331742700439,
-          -0.04238961154048445
-        ],
-        [
-          37.93295132436945,
-          -0.022906931151043617
-        ],
-        [
-          38.682585221734506,
-          -0.009180358765957852
-        ],
-        [
-          39.432219119099564,
-          0.00042039812947883645
-        ],
-        [
-          40.18185301646462,
-          0.007092225534702549
-        ],
-        [
-          41.55565606299418,
-          0.014430798834083537
-        ],
-        [
-          42.92945910952374,
-          0.01794822346536037
-        ],
-        [
-          44.3032621560533,
-          0.0196149615087283
-        ],
-        [
-          45.67706520258286,
-          0.02055081854878317
-        ],
-        [
-          47.05086824911242,
-          0.020991011298438264
-        ],
-        [
-          48.62323521534373,
-          0.02107572289663284
-        ],
-        [
-          50.19560218157505,
-          0.021118892827265763
-        ],
-        [
-          51.76796914780636,
-          0.02121026989082894
-        ],
-        [
-          53.340336114037676,
-          0.021109426139767618
-        ],
-        [
-          54.91270308026899,
-          0.02094910093707274
-        ],
-        [
-          55.86204148248446,
-          0.020937504328767256
-        ],
-        [
-          56.811379884699925,
-          0.02091760513546981
-        ],
-        [
-          57.76071828691539,
-          0.02087113740648165
-        ],
-        [
-          58.71005668913086,
-          0.02082441374154908
-        ],
-        [
-          59.701612671241776,
-          0.020777245571008768
-        ],
-        [
-          60.69316865335269,
-          0.020727127402074483
-        ],
-        [
-          61.68472463546361,
-          0.020675167598279837
-        ],
-        [
-          63.019700273431596,
-          0.020604796468171004
-        ],
-        [
-          64.35467591139958,
-          0.020534611317861124
-        ],
-        [
-          65.68965154936757,
-          0.0204647039507698
-        ],
-        [
-          67.66870000169779,
-          0.020361563579775623
-        ],
-        [
-          69.647748454028,
-          0.020259154113751756
-        ],
-        [
-          71.62679690635822,
-          0.020157479313553786
-        ],
-        [
-          73.60427163292789,
-          0.02005658164525196
-        ],
-        [
-          75.58174635949756,
-          0.019956386994120466
-        ],
-        [
-          77.55922108606723,
-          0.019856938955710456
-        ],
-        [
-          83.74360774187622,
-          0.019568745459408562
-        ],
-        [
-          89.92799439768521,
-          0.019497375115726943
-        ],
-        [
-          91.47409106163745,
-          0.019415434619122193
-        ],
-        [
-          93.0201877255897,
-          0.01920234790269399
-        ],
-        [
-          94.56628438954193,
-          0.019025967113872003
-        ],
-        [
-          95.55174469780209,
-          0.01896912421280829
-        ],
-        [
-          96.53720500606225,
-          0.018932474818022696
-        ],
-        [
-          97.52266531432241,
-          0.018891935420222064
-        ],
-        [
-          98.50866761324593,
-          0.018847037296505352
-        ],
-        [
-          104.229915181177,
-          0.018588073589892198
-        ],
-        [
-          109.95116274910808,
-          0.018330094172307895
-        ],
-        [
-          115.67241031703915,
-          0.01807973882388734
-        ],
-        [
-          123.80427445904986,
-          0.01773442276036138
-        ],
-        [
-          131.93613860106058,
-          0.017407756544550505
-        ],
-        [
-          140.0680027430713,
-          0.017087585284330343
-        ],
-        [
-          148.19986688508203,
-          0.016780218871588832
-        ],
-        [
-          158.3904761904762,
-          0.016401490506247604
-        ],
-        [
-          158.5093989588007,
-          0.016396972348167352
-        ],
-        [
-          158.62832172712518,
-          0.016392462431109256
-        ],
-        [
-          159.8904761904762,
-          0.016344219318623034
-        ],
-        [
-          159.89288732694692,
-          46.89749298338201
-        ],
-        [
-          159.89529846341765,
-          46.248105636632324
-        ],
-        [
-          159.90012073635913,
-          44.97907457765144
-        ],
-        [
-          159.9049430093006,
-          43.75984234912763
-        ],
-        [
-          159.9097652822421,
-          42.58783852982058
-        ],
-        [
-          159.93243780659526,
-          37.64491514528515
-        ],
-        [
-          159.95511033094843,
-          33.48622240979518
-        ],
-        [
-          159.9777828553016,
-          29.955194370463957
-        ],
-        [
-          160.00045537965477,
-          26.931925031635352
-        ],
-        [
-          160.0346633693688,
-          23.131026230189853
-        ],
-        [
-          160.0688713590828,
-          20.04372346316248
-        ],
-        [
-          160.10307934879683,
-          17.503117030632257
-        ],
-        [
-          160.13728733851084,
-          15.387477132249185
-        ],
-        [
-          160.17149532822486,
-          13.607647330780159
-        ],
-        [
-          160.23106728260558,
-          11.119296894091828
-        ],
-        [
-          160.2906392369863,
-          9.205464075990998
-        ],
-        [
-          160.350211191367,
-          7.702511041308254
-        ],
-        [
-          160.40978314574772,
-          6.503008281364877
-        ],
-        [
-          160.46935510012844,
-          5.532113616956222
-        ],
-        [
-          160.52892705450915,
-          4.736553606797326
-        ],
-        [
-          160.6259323588013,
-          3.7210119164752538
-        ],
-        [
-          160.72293766309343,
-          2.95706559501207
-        ],
-        [
-          160.81994296738557,
-          2.3715314789911734
-        ],
-        [
-          160.9169482716777,
-          1.915998248352197
-        ],
-        [
-          161.01395357596985,
-          1.557198055773009
-        ],
-        [
-          161.110958880262,
-          1.2717367683408924
-        ],
-        [
-          161.26736304673776,
-          0.9249707722565313
-        ],
-        [
-          161.42376721321352,
-          0.6777047310450425
-        ],
-        [
-          161.5801713796893,
-          0.4994210678535771
-        ],
-        [
-          161.73657554616506,
-          0.3696808672924474
-        ],
-        [
-          161.89297971264082,
-          0.274544973379974
-        ],
-        [
-          162.11653214894974,
-          0.1801786151974336
-        ],
-        [
-          162.34008458525867,
-          0.11892213566208164
-        ],
-        [
-          162.5636370215676,
-          0.07885527799095333
-        ],
-        [
-          162.7871894578765,
-          0.05249958273771851
-        ],
-        [
-          163.01074189418543,
-          0.0351802775800148
-        ],
-        [
-          163.3020518484637,
-          0.021201822041940904
-        ],
-        [
-          163.59336180274195,
-          0.013050182161396386
-        ],
-        [
-          163.88467175702021,
-          0.008216393592452454
-        ],
-        [
-          164.17598171129848,
-          0.005416297237486903
-        ],
-        [
-          164.4850936705858,
-          0.003711720996612596
-        ],
-        [
-          164.79420562987312,
-          0.0028070844383811426
-        ],
-        [
-          165.10331758916044,
-          0.0023121278267615375
-        ],
-        [
-          165.4129391221861,
-          0.0020208607540323975
-        ],
-        [
-          165.72256065521174,
-          0.0018487066110914581
-        ],
-        [
-          166.03218218823739,
-          0.0017496978701884778
+            81016.17948270113,
+            196.65
+          ]
         ],
-        [
-          166.34184757413777,
-          0.0016933411887341823
+        "title": "Temperature (K) x Height Above Sea Level (M)",
+        "inputs": [
+          "Height Above Sea Level (m)"
         ],
-        [
-          167.93141144685217,
-          0.001572567591734682
+        "outputs": [
+          "Temperature (K)"
         ],
-        [
-          169.52097531956656,
-          0.00158613630702841
+        "interpolation": "linear",
+        "extrapolation": "constant",
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846519805
+        }
+      },
+      "wind_velocity_x": {
+        "source": "66435144603052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403224636273304571217030462b4c4a6c71726b3e557a434e456a3742654c5a2a363553593b62613662592a69644c7d686270625a3e416b5167333578577071245e4648267a7e59686070246360744872567b32747d614374396e5652554739625a4b6d4a464a5e5561567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c7566533e4c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
+        "title": "Wind Velocity X (M/S) x Height Above Sea Level (M)",
+        "inputs": [
+          "Height Above Sea Level (m)"
         ],
-        [
-          171.11053919228095,
-          0.0016045822364257837
+        "outputs": [
+          "Wind Velocity X (m/s)"
         ],
-        [
-          175.76088994831585,
-          0.0016080292208123547
+        "interpolation": null,
+        "extrapolation": null,
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846519808
+        }
+      },
+      "wind_velocity_y": {
+        "source": "66435144603052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403224636273304571217030462b4c4a6c71726b3e557a434e456a3742654c5a2a363553593b62613662592a69644c7d686270625a3e416b5167333578577071245e4648267a7e59686070246360744872567b32747d614374396e5652554739625a4b6d4a464a5e5561567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c7566533e4c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
+        "title": "Wind Velocity Y (M/S) x Height Above Sea Level (M)",
+        "inputs": [
+          "Height Above Sea Level (m)"
         ],
-        [
-          180.41124070435075,
-          0.0016021656099963432
+        "outputs": [
+          "Wind Velocity Y (m/s)"
         ],
-        [
-          185.06159146038564,
-          0.0015962871795418023
+        "interpolation": null,
+        "extrapolation": null,
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846519811
+        }
+      },
+      "wind_heading": {
+        "source": "66435144603052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403224636273304571217030462b4c4a6c71726b3e557a434e456a3742654c5a2a363553593b62613662592a69644c7d686270625a3e416b5167333578577071245e4648267a7e59686070246360744872567b32747d614374396e5652554739625a4b6d4a464a5e5561567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c7566533e4c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
+        "title": "Wind Heading (Deg True) x Height Above Sea Level (M)",
+        "inputs": [
+          "Height Above Sea Level (m)"
         ],
-        [
-          202.12571753179242,
-          0.0015766783962070682
+        "outputs": [
+          "Wind Heading (Deg True)"
         ],
-        [
-          219.1898436031992,
-          0.0015573640762112139
+        "interpolation": null,
+        "extrapolation": null,
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846519784
+        }
+      },
+      "wind_direction": {
+        "source": "66435144603052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403224636273304571217030462b4c4a6c71726b3e557a434e456a3742654c5a2a363553593b62613662592a69644c7d686270625a3e416b5167333578577071245e4648267a7e59686070246360744872567b32747d614374396e5652554739625a4b6d4a464a5e5561567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c7566533e4c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
+        "title": "Wind Direction (Deg True) x Height Above Sea Level (M)",
+        "inputs": [
+          "Height Above Sea Level (m)"
         ],
-        [
-          236.25396967460597,
-          0.0015382136014168697
+        "outputs": [
+          "Wind Direction (Deg True)"
         ],
-        [
-          261.9195710352043,
-          0.0015085897975357396
+        "interpolation": null,
+        "extrapolation": null,
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846519673
+        }
+      },
+      "wind_speed": {
+        "source": "66435144603052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32314f622377305a525a263038305426305a5337403224636273304571217030462b4c4a6c71726b3e557a434e456a3742654c5a2a363553593b62613662592a69644c7d686270625a3e416b5167333578577071245e4648267a7e59686070246360744872567b32747d614374396e5652554739625a4b6d4a464a5e5561567b7e62365a5a323f6e6c2343425e5a2a5f3847576e58343e5a657728355a2a47297e4765266938567b7e62365a5a3250366334324933574d4f6e3d557671444461247b764b4a5a7860635651683067455e7d7b6e61247b762a575f353033625a4b76486c7566533e4c6b526551304e3538426b5044505530463b616262592a52446c2163546a62642a772a567b26677d596860714263606a7b58625a422a53583e343b59575f353033625a4b7648335356446a583d384c3e556b59646f50477c7328337d306825576e70773e55743f7523593f504366504b415f476c2163555a6c7630235e6c7a6f26616a314f4f355651797d336259584f395a2a467336557a427e366a307c363261646c79415a656558405574673448343056512d5676476f3462216c764c583e4e30726a306230426259584f4b612b48266c6a30397739593b32545f317a25296f593b3255316c23423e70623767643462615a6c2a5864734c53623767643462615a6c2a6c617a3b29516a7d3b476a31364f44593b30642b5a2a4676445a67677b244f387c2449515a4f7a",
+        "title": "Wind Speed (M/S) x Height Above Sea Level (M)",
+        "inputs": [
+          "Height Above Sea Level (m)"
         ],
-        [
-          287.5851723958026,
-          0.0014788668666895325
+        "outputs": [
+          "Wind Speed (m/s)"
         ],
-        [
-          298.2290954115797,
-          0.0014657143369057072
-        ]
+        "interpolation": null,
+        "extrapolation": null,
+        "signature": {
+          "module": "rocketpy.mathutils.function",
+          "name": "Function",
+          "hash": 8532846519823
+        }
+      },
+      "signature": {
+        "module": "rocketpy.environment.environment",
+        "name": "Environment",
+        "hash": 8532846519379
+      }
+    },
+    "rail_length": 5.2,
+    "inclination": 85,
+    "heading": 0,
+    "initial_solution": [
+      0,
+      0,
+      0,
+      1400,
+      0,
+      0,
+      0,
+      0.9990482215818578,
+      -0.043619387365336,
+      0.0,
+      0.0,
+      0,
+      0,
+      0
+    ],
+    "terminate_on_apogee": false,
+    "max_time": 600,
+    "max_time_step": Infinity,
+    "min_time_step": 0,
+    "rtol": 1e-06,
+    "atol": [
+      0.001,
+      0.001,
+      0.001,
+      0.001,
+      0.001,
+      0.001,
+      1e-06,
+      1e-06,
+      1e-06,
+      1e-06,
+      0.001,
+      0.001,
+      0.001
+    ],
+    "time_overshoot": true,
+    "name": "Flight",
+    "equations_of_motion": "standard",
+    "solution": [
+      [
+        0,
+        0,
+        0,
+        1400,
+        0,
+        0,
+        0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0,
+        0,
+        0
+      ],
+      [
+        0.00140955829402094,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.00281911658804188,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.00563823317608376,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.00845734976412564,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.01127646635216752,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.039467632232586314,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.04085528032029989,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.04224292840801347,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.04501822458344063,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.047793520758867794,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.050568816934294956,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.051535065794208836,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.052501314654122715,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.05443381237395048,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.056366310093778245,
+        0.0,
+        0.0,
+        1400.0,
+        0.0,
+        0.0,
+        0.0,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.05829880781360601,
+        0.0,
+        1.5933864953423278e-07,
+        1400.000001821249,
+        0.0,
+        0.00016490435964306664,
+        0.0018848654556736183,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.06066778422864502,
+        0.0,
+        1.5999327427935065e-06,
+        1400.0000182873148,
+        0.0,
+        0.0010513121322094107,
+        0.01201655265768111,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.06303676064368403,
+        0.0,
+        6.282544407787272e-06,
+        1400.000071809811,
+        0.0,
+        0.002901966283265216,
+        0.03316962639857135,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.06540573705872305,
+        0.0,
+        1.6491539699930012e-05,
+        1400.0001884991614,
+        0.0,
+        0.005716942058195106,
+        0.06534494673702612,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.08909550120911316,
+        0.0,
+        0.0009139678885423401,
+        1400.010446700769,
+        0.0,
+        0.08693249561588146,
+        0.9936429716990958,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.09280001741983737,
+        0.0,
+        0.0012760099043425523,
+        1400.0145848599457,
+        0.0,
+        0.10852731343557691,
+        1.240472868846817,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.09574786203637055,
+        0.0,
+        0.0016246605556046343,
+        1400.018569955125,
+        0.0,
+        0.1280188388862068,
+        1.4632620242081205,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.09869570665290373,
+        0.0,
+        0.0020344115996946085,
+        1400.0232534309903,
+        0.0,
+        0.14998159675720665,
+        1.7142974953865322,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.10099207719695144,
+        0.0,
+        0.0024000882239764245,
+        1400.0274331339317,
+        0.0,
+        0.16850064942151247,
+        1.9259712359371395,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.10328844774099916,
+        0.0,
+        0.0028088615362449523,
+        1400.0321054342708,
+        0.0,
+        0.187516208377477,
+        2.143320069370056,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.10558481828504687,
+        0.0,
+        0.003261414552672192,
+        1400.0372781389183,
+        0.0,
+        0.20663012646971984,
+        2.3617931528750877,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.1101775593731423,
+        0.0,
+        0.00429887651942298,
+        1400.0491363834603,
+        0.0,
+        0.24515321896617254,
+        2.802114114973655,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.11477030046123773,
+        0.0,
+        0.005514169640359345,
+        1400.0630272473957,
+        0.0,
+        0.28407022194819537,
+        3.2469374945248948,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.11936304154933317,
+        0.0,
+        0.006909103566093288,
+        1400.0789714151256,
+        0.0,
+        0.323381362618018,
+        3.6962658884621753,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.1312706469438581,
+        0.0,
+        0.011377564514575866,
+        1400.1300461574795,
+        0.0,
+        0.4271408121373476,
+        4.882241823373838,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.14317825233838302,
+        0.0,
+        0.01709735933422204,
+        1400.1954237114292,
+        0.0,
+        0.5335552522547923,
+        6.098564439685296,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.1499601229088181,
+        0.0,
+        0.02092540721031273,
+        1400.2391784988702,
+        0.0,
+        0.5953509503138008,
+        6.804892500585409,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.1542012180187087,
+        0.0,
+        0.02353219150385247,
+        1400.2689741796873,
+        0.0,
+        0.6339467808747711,
+        7.246044862565814,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.1584423131285993,
+        0.0,
+        0.026301303344797584,
+        1400.3006252728617,
+        0.0,
+        0.6719007768361129,
+        7.679861021502744,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.1626834082384899,
+        0.0,
+        0.029230009809388936,
+        1400.3341005409316,
+        0.0,
+        0.7092078230693226,
+        8.106282511209866,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.1711655984582711,
+        0.0,
+        0.035553850538847034,
+        1400.4063823712236,
+        0.0,
+        0.781878928270281,
+        8.936917044556292,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.17964778867805228,
+        0.0,
+        0.04248310299988946,
+        1400.4855840892722,
+        0.0,
+        0.8519567395597305,
+        9.737910092857739,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.18812997889783348,
+        0.0,
+        0.04999575643692391,
+        1400.57145411099,
+        0.0,
+        0.919437969248095,
+        10.509224077650394,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.19446537171097383,
+        0.0,
+        0.055975043459944085,
+        1400.6397976743965,
+        0.0,
+        0.9681441269126588,
+        11.0659380072229,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.20080076452411422,
+        0.0,
+        0.06225861643952589,
+        1400.7116192422013,
+        0.0,
+        1.0154970336509694,
+        11.60718420792957,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.20566109450366143,
+        0.0,
+        0.06728145535107888,
+        1400.7690305536687,
+        0.0,
+        1.05137452515394,
+        12.0172658123004,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.21052142448320865,
+        0.0,
+        0.07247882232791543,
+        1400.8284367300505,
+        0.0,
+        1.087314407616634,
+        12.428060548604087,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.21538175446275587,
+        0.0,
+        0.07785102064568028,
+        1400.8898412378035,
+        0.0,
+        1.123316697831467,
+        12.839568608778825,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.22510241442185028,
+        0.0,
+        0.08912102394692341,
+        1401.018657964989,
+        0.0,
+        1.1955086105647028,
+        13.664725947156091,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
       ],
-      "title": "Az (M/S\u00b2) x Time (S)",
-      "inputs": [
-        "Time (s)"
+      [
+        0.23482307438094469,
+        0.0,
+        0.1010940455332924,
+        1401.1555102279433,
+        0.0,
+        1.2679504784650104,
+        14.492740286166335,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
       ],
-      "outputs": [
-        "Az (m/s\u00b2)"
+      [
+        0.2445437343400391,
+        0.0,
+        0.11377246507181109,
+        1401.300425226385,
+        0.0,
+        1.3406423812576853,
+        15.323612537073853,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
       ],
-      "interpolation": "spline",
-      "extrapolation": "zero",
-      "signature": {
-        "module": "rocketpy.mathutils.function",
-        "name": "Function"
+      [
+        0.2542643942991335,
+        0.0,
+        0.12715871343606644,
+        1401.4534307453262,
+        0.0,
+        1.4135843942008401,
+        16.15734356008281,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.3514709938900776,
+        0.0,
+        0.30048814467091445,
+        1403.4345952099482,
+        0.0,
+        2.156797292474204,
+        24.652305859434204,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.36324670161934375,
+        0.0,
+        0.3264257708937386,
+        1403.7310636342845,
+        0.0,
+        2.248538046612752,
+        25.700907477532574,
+        0.9990482215818578,
+        -0.043619387365336,
+        0.0,
+        0.0,
+        0.0,
+        0.0,
+        0.0
+      ],
+      [
+        0.3693547037882063,
+        -1.1292463872357002e-07,
+        0.3404833396704705,
+        1403.891377201958,
+        -1.8488668184321227e-05,
+        2.3015002878542328,
+        26.24648173401386,
+        0.9990482213453793,
+        -0.04361939278158498,
+        -1.882083502203776e-11,
+        8.217354033877149e-13,
+        -1.7738349262360744e-06,
+        -6.293683384642911e-09,
+        -2.0375523455060334e-30
+      ],
+      [
+        0.3754627059570688,
+        -3.4107912459364784e-07,
+        0.3548649997971734,
+        1404.0550300887885,
+        -3.735408016640537e-05,
+        2.3545604179595947,
+        26.79319390845402,
+        0.9990482206266855,
+        -0.04361940924237335,
+        -7.7225897825912e-11,
+        3.371755522596924e-12,
+        -5.39357584149361e-06,
+        -1.9269912362380595e-08,
+        -2.0333122908984873e-30
+      ],
+      [
+        0.3876787102947939,
+        -1.0324591154870284e-06,
+        0.3842776980187491,
+        1404.3890284060676,
+        -7.583917065758262e-05,
+        2.460876365875544,
+        27.88889488437617,
+        0.9990482177042114,
+        -0.043619476177928315,
+        -3.1764486357262945e-10,
+        1.3868674442544823e-11,
+        -1.6542759964959186e-05,
+        -5.965413890402393e-08,
+        2.5882883801360795e-28
+      ],
+      [
+        0.39989471463251897,
+        -2.2032034896826368e-06,
+        0.4149915439174059,
+        1404.7364396482521,
+        -0.00011583485584537671,
+        2.567583892640169,
+        28.989153380034796,
+        0.9990482107313502,
+        -0.043619635881981894,
+        -8.979661230308403e-10,
+        3.920604909809743e-11,
+        -3.579927535497243e-05,
+        -1.3054361589058657e-07,
+        5.185179894144426e-28
+      ],
+      [
+        0.41211071897024404,
+        -3.87178805893795e-06,
+        0.4470113221027292,
+        1405.0973195208087,
+        -0.00015734546616002107,
+        2.6746831656762318,
+        30.093974383374462,
+        0.9990481974713294,
+        -0.0436199395833046,
+        -2.014155523484906e-09,
+        8.793993701658005e-11,
+        -6.37376259492623e-05,
+        -2.3528423336343577e-07,
+        4.690815098793261e-27
+      ],
+      [
+        0.47147904178591876,
+        -1.984742098461189e-05,
+        0.6214187702598837,
+        1407.0452631788032,
+        -0.0003808885866119679,
+        3.200766579473389,
+        35.52834856980223,
+        0.9990479315496044,
+        -0.043626029429866,
+        -2.5949104972251604e-08,
+        1.132968545549677e-09,
+        -0.0003465765922751376,
+        -1.3775672293264702e-06,
+        2.4663489125727207e-26
+      ],
+      [
+        0.5078212847273655,
+        -3.650259666434234e-05,
+        0.7436732191447673,
+        1408.3978187637408,
+        -0.0005357461254543638,
+        3.527202412388518,
+        38.90599876914171,
+        0.9990475352225364,
+        -0.04363510422534487,
+        -6.284605942880461e-08,
+        2.7439405960043823e-09,
+        -0.0006526514759246115,
+        -2.685415401330153e-06,
+        2.4254520578375888e-26
+      ],
+      [
+        0.5343387025617514,
+        -5.2323674829266144e-05,
+        0.8403838462550629,
+        1409.462416810803,
+        -0.0006575261682655402,
+        3.7669243438102127,
+        41.38824882746177,
+        0.9990470715057931,
+        -0.04364571972983226,
+        -1.0720301537590228e-07,
+        4.680641909985393e-09,
+        -0.000949945722608064,
+        -4.011028050639497e-06,
+        2.3927097102550236e-26
+      ],
+      [
+        0.5608561203961373,
+        -7.147380168516996e-05,
+        0.9434621063772197,
+        1410.5929600712154,
+        -0.0007868225122807514,
+        4.007459714759643,
+        43.879726704158024,
+        0.9990464159101088,
+        -0.043660723268478675,
+        -1.7153526433077514e-07,
+        7.489541866503105e-09,
+        -0.001315305336128538,
+        -5.70181414204071e-06,
+        2.358468683870834e-26
+      ],
+      [
+        0.5873735382305232,
+        -9.415351695973734e-05,
+        1.0529298119481465,
+        1411.7896930508343,
+        -0.0009237435710782992,
+        4.248829810819949,
+        46.380417337927646,
+        0.9990455275838743,
+        -0.04368104457701697,
+        -2.6097607415015395e-07,
+        1.1394837408250978e-08,
+        -0.001752886097349299,
+        -7.802130868414456e-06,
+        -9.200475684273601e-24
+      ],
+      [
+        0.6404083738992948,
+        -0.00015085517020785625,
+        1.291117064060268,
+        1414.3826226721992,
+        -0.0012210175835069858,
+        4.734183497084912,
+        51.40938079380031,
+        0.9990428920488452,
+        -0.04374127864290386,
+        -5.368569843044218e-07,
+        2.3441560708266836e-08,
+        -0.0028564087415593586,
+        -1.3391933164270891e-05,
+        7.069718405394961e-25
+      ],
+      [
+        0.6934432095680665,
+        -0.0002242153217652058,
+        1.5551469234205424,
+        1417.2432758453178,
+        -0.0015509509414275806,
+        5.223292517334145,
+        56.4749983766145,
+        0.9990387792543681,
+        -0.043835107125595366,
+        -9.894917342177407e-07,
+        4.320932643298015e-08,
+        -0.004280620188741647,
+        -2.113767340385751e-05,
+        5.424207793182148e-23
+      ],
+      [
+        0.7464780452368381,
+        -0.0003159900629563369,
+        1.8452254816126035,
+        1420.3735517721414,
+        -0.0019157992872672644,
+        5.716569047531083,
+        61.57711629527058,
+        0.9990328112687537,
+        -0.043970902214496115,
+        -1.6789123059982804e-06,
+        7.332549297472962e-08,
+        -0.006025112956370772,
+        -3.1315902364635346e-05,
+        4.737508374070741e-23
+      ],
+      [
+        0.7995128809056098,
+        -0.00042810816898136836,
+        2.1615871624532397,
+        1423.7753818428419,
+        -0.002318661559025141,
+        6.21455038449519,
+        66.71556507766667,
+        0.9990246066145237,
+        -0.04415690739919767,
+        -2.67234027054819e-06,
+        1.1673849613837483e-07,
+        -0.008067483457439776,
+        -4.411950421500032e-05,
+        -2.0338865265199337e-22
+      ],
+      [
+        0.813164227469089,
+        -0.00046051393119599424,
+        2.2473048049558586,
+        1424.6952071199746,
+        -0.0024289799002178065,
+        6.343571474243592,
+        68.04407542496767,
+        0.9990220877212909,
+        -0.044213857761156786,
+        -2.9859243992235487e-06,
+        1.3044634908594224e-07,
+        -0.008636233631810847,
+        -4.785233587098802e-05,
+        -2.796708358163189e-22
+      ],
+      [
+        0.8268155740325682,
+        -0.000494445310032558,
+        2.3347862622196556,
+        1425.6331846762325,
+        -0.002542161754346586,
+        6.4729602258348224,
+        69.37497724254042,
+        0.9990193913378289,
+        -0.04427473975324785,
+        -3.3255702803345905e-06,
+        1.4529585276592832e-07,
+        -0.009220373789385665,
+        -5.176280664075713e-05,
+        -2.7724687444377114e-22
+      ],
+      [
+        0.8404669205960474,
+        -0.0005299419029627483,
+        2.424036650599903,
+        1426.5893471408642,
+        -0.002658293079322659,
+        6.602730002393573,
+        70.70826803933817,
+        0.9990165123350452,
+        -0.0443396526329663,
+        -3.6924811011800074e-06,
+        1.6134025533244348e-07,
+        -0.009818538642062759,
+        -5.5848919907342105e-05,
+        -2.748198018303615e-22
+      ],
+      [
+        0.8775732859954444,
+        -0.0006347303137186288,
+        2.6756223966025616,
+        1429.2805354609027,
+        -0.0029897441099004506,
+        6.957519887047144,
+        74.34438192835326,
+        0.9990077223532017,
+        -0.04453722346536328,
+        -4.838534734091896e-06,
+        2.114763061121241e-07,
+        -0.011500391860952489,
+        -6.781017393953242e-05,
+        5.673499063779046e-22
+      ],
+      [
+        0.9146796513948413,
+        -0.0007522713635419086,
+        2.9404325962280673,
+        1432.1069721926608,
+        -0.003345696219528031,
+        7.315518902851591,
+        77.99803657667196,
+        0.998997473520681,
+        -0.04476647977934307,
+        -6.217172434318932e-06,
+        2.718284264211996e-07,
+        -0.01323803870187879,
+        -8.094328131855767e-05,
+        5.621452942864732e-22
+      ],
+      [
+        0.9517860167942382,
+        -0.0008835165204218041,
+        3.218592124145905,
+        1435.0693068575647,
+        -0.0037283919292453657,
+        7.677035321153107,
+        81.66915944695306,
+        0.9989857159482591,
+        -0.0450280441807176,
+        -7.84860912280217e-06,
+        3.433084564441472e-07,
+        -0.014987359248438092,
+        -9.508836215809763e-05,
+        5.574423635014858e-22
+      ],
+      [
+        0.9674325642455079,
+        -0.0009431818064855093,
+        3.3399125683471174,
+        1436.3592984426082,
+        -0.0038982921716484713,
+        7.830596929355451,
+        83.22237185444848,
+        0.9989803004450295,
+        -0.04514802730513173,
+        -8.61612073823835e-06,
+        3.7695897297415177e-07,
+        -0.015717792804942718,
+        -0.000101311587808497,
+        9.102983486538206e-22
+      ],
+      [
+        0.9990075872778321,
+        -0.001072039599514083,
+        3.592102846235604,
+        1439.0367285144519,
+        -0.004258096980497925,
+        8.142701630982948,
+        86.36615175235734,
+        0.9989685567246693,
+        -0.04540705252068754,
+        -1.0316300720357726e-05,
+        4.515636240070024e-07,
+        -0.017145599139936133,
+        -0.00011417609817010284,
+        3.2149590433310326e-21
+      ],
+      [
+        1.0183793592598076,
+        -0.0011568237291645909,
+        3.7517134457727916,
+        1440.7285236384441,
+        -0.004490302592627023,
+        8.335415097555929,
+        88.29814721731826,
+        0.9989608191824012,
+        -0.04557692840386687,
+        -1.146046394726224e-05,
+        5.018144038570765e-07,
+        -0.017983632321366495,
+        -0.0001222307036152395,
+        7.162382007210037e-21
+      ],
+      [
+        1.037751131241783,
+        -0.0012461926560019903,
+        3.9150641701604596,
+        1442.4577401102072,
+        -0.004731695454400715,
+        8.528945465941055,
+        90.2306277027551,
+        0.9989526913272223,
+        -0.04575469621907313,
+        -1.2682664052784172e-05,
+        5.555350152202476e-07,
+        -0.018780346259817084,
+        -0.0001303380667931829,
+        -5.538801385231068e-17
+      ],
+      [
+        1.0571229032237586,
+        -0.0013403309504651652,
+        4.082171547707948,
+        1444.2243880110848,
+        -0.004982661284978338,
+        8.723296159206887,
+        92.16315456821344,
+        0.9989441897485892,
+        -0.04593990231063608,
+        -1.3983126526099383e-05,
+        6.127458876503974e-07,
+        -0.019525824752037745,
+        -0.0001384378779602352,
+        -1.286271325020118e-16
+      ],
+      [
+        1.0878788324799102,
+        -0.0015001707050219717,
+        4.3552494007942615,
+        1447.1061297052088,
+        -0.00540194909441783,
+        9.033626482703614,
+        95.23103723513972,
+        0.998929993780385,
+        -0.046247462023919585,
+        -1.620660317454403e-05,
+        7.106956396164601e-07,
+        -0.020574263567749353,
+        -0.00015108503708174002,
+        -1.6056499459772598e-16
+      ],
+      [
+        1.118634761736062,
+        -0.0016733570401679166,
+        4.637909785356341,
+        1450.0822161920455,
+        -0.0058479658976501115,
+        9.346218997511471,
+        98.29840802447589,
+        0.9989150318540984,
+        -0.04656941366046262,
+        -1.8619815158529052e-05,
+        8.171980810224497e-07,
+        -0.021427094592574723,
+        -0.0001632553001232594,
+        -1.6802940384024603e-16
+      ],
+      [
+        1.1439443303803107,
+        -0.0018264107654927322,
+        4.877747455868147,
+        1452.6020407357692,
+        -0.00623599152339703,
+        9.605222782859844,
+        100.8221263580348,
+        0.9989022334331333,
+        -0.0468430776160188,
+        -2.0741806691968796e-05,
+        9.110221626552275e-07,
+        -0.021957935775951343,
+        -0.00017272488082893244,
+        -2.3143424284476995e-17
+      ],
+      [
+        1.1692538990245596,
+        -0.0019895349656256574,
+        5.124161077699201,
+        1455.185732755452,
+        -0.006643920238881222,
+        9.865884770614121,
+        103.34534519854223,
+        0.9988890996066564,
+        -0.047122270626171935,
+        -2.2978509771134745e-05,
+        1.0101117048279607e-06,
+        -0.022310192812543882,
+        -0.0001814988014461626,
+        1.5387609467981439e-16
+      ],
+      [
+        1.1945634676688084,
+        -0.002163247915543566,
+        5.377193446373864,
+        1457.8332789370943,
+        -0.007072543144084797,
+        10.128245388709955,
+        105.86800653316324,
+        0.9988757388622846,
+        -0.047404609488876696,
+        -2.531998597301876e-05,
+        1.1140729767152622e-06,
+        -0.0224645447658258,
+        -0.00018939389925380862,
+        3.2203328539330157e-16
+      ],
+      [
+        1.2316568052102488,
+        -0.0024378794668494185,
+        5.7600661066453025,
+        1461.8288283305342,
+        -0.007739338547053141,
+        10.515864134957551,
+        109.56408667721472,
+        0.998855957996015,
+        -0.04781961919378182,
+        -2.891953191053989e-05,
+        1.2743812125517406e-06,
+        -0.022305121003773066,
+        -0.00019906075693861726,
+        5.383582875515712e-16
+      ],
+      [
+        1.2687501427516892,
+        -0.002738010507596627,
+        6.157375603435184,
+        1465.9614538591018,
+        -0.008454004933850548,
+        10.907196160578872,
+        113.25870610660269,
+        0.9988363444853052,
+        -0.04822765042315578,
+        -3.267489243719915e-05,
+        1.4423528582878998e-06,
+        -0.021647903699556454,
+        -0.0002059355957046683,
+        4.750878741531491e-16
+      ],
+      [
+        1.3058434802931296,
+        -0.003065580924664021,
+        6.569269493167443,
+        1470.2310950111357,
+        -0.0092182905935948,
+        11.302173309011796,
+        116.95169704763629,
+        0.9988173935651926,
+        -0.048618660518234005,
+        -3.652725091934731e-05,
+        1.6155695226736445e-06,
+        -0.020466946239448603,
+        -0.00020948218671505947,
+        2.1696060088392778e-16
+      ],
+      [
+        1.34293681783457,
+        -0.0034224635405005993,
+        6.995880993292246,
+        1474.63768834776,
+        -0.010033159697530738,
+        11.700612483470925,
+        120.64291241895187,
+        0.9987996013767185,
+        -0.04898291855944023,
+        -4.0411261018834764e-05,
+        1.7913107062391229e-06,
+        -0.018766103467567238,
+        -0.0002093127222480669,
+        -1.1170534215374999e-16
+      ],
+      [
+        1.4021386812930872,
+        -0.004057400029437005,
+        7.707541915890939,
+        1481.954262548712,
+        -0.011438258976250911,
+        12.34287405124258,
+        126.53018656798481,
+        0.9987747712594629,
+        -0.049486881977995875,
+        -4.649803207593772e-05,
+        2.069503138422618e-06,
+        -0.01508997361168911,
+        -0.00020096477301409542,
+        -3.8585291941266083e-16
+      ],
+      [
+        1.447031703480718,
+        -0.004596417266530928,
+        8.272657703966969,
+        1487.7347235122884,
+        -0.012588239375008838,
+        12.834267416989038,
+        130.9909875507603,
+        0.9987597798868846,
+        -0.049788609947924126,
+        -5.087019277809912e-05,
+        2.2721182435857674e-06,
+        -0.011656757777070991,
+        -0.000187969081256134,
+        7.602883574273022e-16
+      ],
+      [
+        1.491924725668349,
+        -0.00518860353268323,
+        8.85989594410731,
+        1493.7153711961546,
+        -0.01380750852085365,
+        13.32836344577378,
+        135.4485147120472,
+        0.9987487281281061,
+        -0.050009817776866326,
+        -5.489668292496215e-05,
+        2.461612945137912e-06,
+        -0.007900510503020245,
+        -0.0001698867352324225,
+        2.5521676766845535e-15
+      ],
+      [
+        1.5260726318617992,
+        -0.005676536760832439,
+        9.321453067696336,
+        1498.3984459786466,
+        -0.014777974118702368,
+        13.704973930602462,
+        138.83332444217632,
+        0.9987431770940162,
+        -0.05012052786394537,
+        -5.766004007172449e-05,
+        2.593907624519115e-06,
+        -0.004993357112062074,
+        -0.000153408442516554,
+        3.1316037728735635e-15
+      ],
+      [
+        1.5602205380552494,
+        -0.006198195024675734,
+        9.795868700237332,
+        1503.1969533454912,
+        -0.015781943986237668,
+        14.08127744200237,
+        142.2091099266714,
+        0.9987400758410391,
+        -0.05018224905354258,
+        -6.012775937468135e-05,
+        2.7141926280918744e-06,
+        -0.002199956316991276,
+        -0.00013540763312667613,
+        3.1367583064314035e-15
+      ],
+      [
+        1.5943684442486996,
+        -0.0067546597527977596,
+        10.28312055648966,
+        1508.1105652454976,
+        -0.016815919348121478,
+        14.456597628499626,
+        145.57422021803535,
+        0.9987392663244867,
+        -0.05019831490178625,
+        -6.228208491168296e-05,
+        2.821480607975934e-06,
+        0.00033136748082743126,
+        -0.00011680014661088433,
+        2.929879839021523e-15
+      ],
+      [
+        1.6285163504421498,
+        -0.007346893857484404,
+        10.783165726639895,
+        1513.1389089248694,
+        -0.01787634533938145,
+        14.830412176931473,
+        148.92817407250124,
+        0.9987404623913333,
+        -0.05017447365471383,
+        -6.412149173746324e-05,
+        2.9154300139903297e-06,
+        0.0024558756541626565,
+        -9.861114573435511e-05,
+        2.697693519924743e-15
+      ],
+      [
+        1.6626642566356,
+        -0.0079757405987279,
+        11.29594512241443,
+        1518.281597663343,
+        -0.018959702610117337,
+        15.202302874870279,
+        152.27089859662647,
+        0.9987432570670406,
+        -0.050118785587809404,
+        -6.566222597704523e-05,
+        2.9964189806676225e-06,
+        0.004041912544295058,
+        -8.192466920542288e-05,
+        2.4932112819170274e-15
+      ],
+      [
+        1.6968121628290502,
+        -0.008641926602683047,
+        11.821387047144698,
+        1523.5382431981395,
+        -0.02006266036190061,
+        15.571944215443866,
+        155.60235177905446,
+        0.9987471394761077,
+        -0.050041345800320776,
+        -6.693890991315669e-05,
+        3.0655846712849676e-06,
+        0.0049816910820069124,
+        -6.781738355504691e-05,
+        2.3157760516658086e-15
+      ],
+      [
+        1.7309600690225004,
+        -0.009346071210259687,
+        12.359410676561291,
+        1528.9084570277919,
+        -0.02118227548885756,
+        15.939118997609988,
+        158.9224371722118,
+        0.998751522000276,
+        -0.04995380369897389,
+        -6.800381979610025e-05,
+        3.1248114347981756e-06,
+        0.005202134608860892,
+        -5.727709512328708e-05,
+        2.1549501360737572e-15
+      ],
+      [
+        1.770308643380365,
+        -0.010205224162042299,
+        12.99486486244744,
+        1535.236865591265,
+        -0.022489955389822704,
+        16.35902826213131,
+        162.73388527956163,
+        0.9987563788905374,
+        -0.04985661604741446,
+        -6.905499599916523e-05,
+        3.1840029707362164e-06,
+        0.004523873227361279,
+        -5.062552808588388e-05,
+        1.982092010695605e-15
+      ],
+      [
+        1.8096572177382295,
+        -0.011116192848641382,
+        13.646778575615063,
+        1541.7149441378165,
+        -0.0238142099354896,
+        16.775616402125713,
+        166.5297817277157,
+        0.9987601102127054,
+        -0.04978181858544948,
+        -7.003512414484889e-05,
+        3.238098411092976e-06,
+        0.0028884423726784035,
+        -5.0626914496765186e-05,
+        1.8190941006205726e-15
+      ],
+      [
+        1.849005792096094,
+        -0.012079590515618055,
+        14.315025425260687,
+        1548.3420749035654,
+        -0.025154472222006605,
+        17.18925612397323,
+        170.3098046700726,
+        0.9987618301823303,
+        -0.04974728922506615,
+        -7.1081435147943e-05,
+        3.2926669200983927e-06,
+        0.00044575748598429244,
+        -5.7468083291331635e-05,
+        1.6648035638590666e-15
+      ],
+      [
+        1.8883543664539586,
+        -0.013096051442780428,
+        14.999498984472279,
+        1555.117626729035,
+        -0.02651199584901553,
+        17.600545975319715,
+        174.0736164625093,
+        0.9987608518586908,
+        -0.04976690084772085,
+        -7.232681345362375e-05,
+        3.3532921126640013e-06,
+        -0.002560326443143987,
+        -7.06331364092606e-05,
+        1.5195525139239055e-15
+      ],
+      [
+        1.9277029408118231,
+        -0.014166308108666264,
+        15.700121206695203,
+        1562.0409546051037,
+        -0.027889783131642882,
+        18.0102484314963,
+        177.82086262428072,
+        0.998756770083164,
+        -0.04984872029221786,
+        -7.38845164479073e-05,
+        3.424967747455855e-06,
+        -0.005810009928871531,
+        -8.887157195414962e-05,
+        1.3837829421383726e-15
+      ],
+      [
+        1.9670515151696877,
+        -0.01529124603844313,
+        16.416846528247607,
+        1569.1113983981431,
+        -0.029292341197336244,
+        18.419212738585514,
+        181.55112393189458,
+        0.9987495120092377,
+        -0.049993913657153034,
+        -7.58357317026984e-05,
+        3.511590460782678e-06,
+        -0.008934039148828682,
+        -0.00011025185548228824,
+        1.2574523580451217e-15
+      ],
+      [
+        2.006400089527552,
+        -0.016471946447674413,
+        17.14966189230329,
+        1576.3282716308909,
+        -0.030725145821130558,
+        18.82823187378852,
+        185.2634409552741,
+        0.9987393631808608,
+        -0.05019626156413196,
+        -7.821875194478907e-05,
+        3.61548749959109e-06,
+        -0.011553302863388681,
+        -0.00013232853680264086,
+        1.1401797296652403e-15
+      ],
+      [
+        2.0457486638854165,
+        -0.017709704752855476,
+        17.89857809790206,
+        1583.6907982790976,
+        -0.032193594298678505,
+        19.23769831723681,
+        188.95401329906167,
+        0.998726961817926,
+        -0.05044244309003756,
+        -8.102141205055951e-05,
+        3.737046163202647e-06,
+        -0.013328563075864325,
+        -0.00015241843743840752,
+        1.0315113347114148e-15
+      ],
+      [
+        2.085097238243281,
+        -0.01900602516328813,
+        18.663618930542803,
+        1591.1980686155903,
+        -0.033702743838946475,
+        19.64783887776758,
+        192.6196182816405,
+        0.9987132490814937,
+        -0.05071327782057567,
+        -8.417930417188539e-05,
+        3.874551725949023e-06,
+        -0.014011772044521071,
+        -0.0001679480049947318,
+        9.310413402668012e-16
+      ],
+      [
+        2.124445812601145,
+        -0.02036259525913195,
+        19.4448141800576,
+        1598.8490734511138,
+        -0.03525675395380165,
+        20.05876784048929,
+        196.25899288843564,
+        0.9986993693274199,
+        -0.05098594095506091,
+        -8.758128723736902e-05,
+        4.024302459413752e-06,
+        -0.013490460826193767,
+        -0.00017682246947343846,
+        8.384134042067112e-16
+      ],
+      [
+        2.1637943869590095,
+        -0.021781234779463483,
+        20.242192701816958,
+        1606.6427672207515,
+        -0.036858093184220626,
+        20.47035976919348,
+        199.87204930879972,
+        0.9986865251732967,
+        -0.051236943271648856,
+        -9.10824104524628e-05,
+        4.1810165365411144e-06,
+        -0.011816911984291759,
+        -0.00017777731624773896,
+        7.53270063661482e-16
+      ],
+      [
+        2.203142961316874,
+        -0.023263817358293866,
+        21.055771971050543,
+        1614.5781067486982,
+        -0.03850690414349069,
+        20.882143218301973,
+        203.4588250908878,
+        0.998675803581424,
+        -0.05144548936655417,
+        -9.452310706048114e-05,
+        4.338501844761691e-06,
+        -0.009215155088628468,
+        -0.00017064774468322723,
+        6.752269370015803e-16
+      ],
+      [
+        2.242491535674738,
+        -0.024812174148234674,
+        21.88554511165938,
+        1622.654054643803,
+        -0.04020078403696599,
+        21.293317978825097,
+        207.01912756043842,
+        0.9986679993491133,
+        -0.05159671343711774,
+        -9.775234332458619e-05,
+        4.490515009399964e-06,
+        -0.006060885739726642,
+        -0.000156493257947321,
+        6.038803688304711e-16
+      ],
+      [
+        2.2818401100326025,
+        -0.026427996946196835,
+        22.731469665473536,
+        1630.869567590692,
+        -0.04193506174694515,
+        21.70287554535222,
+        210.55264021982012,
+        0.9986634730127504,
+        -0.05168418548411664,
+        -0.0001006508225264441,
+        4.63169002003888e-06,
+        -0.0028278546546521913,
+        -0.00013747011240774796,
+        5.416659194212573e-16
+      ],
+      [
+        2.3211886843904668,
+        -0.0281127563572416,
+        23.593461476217573,
+        1639.223588513858,
+        -0.043703301819042965,
+        22.10974544283383,
+        214.05906694774342,
+        0.998662065561942,
+        -0.051711331964329275,
+        -0.00010315154601076271,
+        4.758373049049108e-06,
+        -3.00275617964942e-05,
+        -0.00011668304470893287,
+        -7.3756658411417e-17
+      ],
+      [
+        2.360537258748331,
+        -0.02986765026591583,
+        24.471395510966673,
+        1647.7150465758593,
+        -0.045498275386733025,
+        22.512969387178508,
+        217.5381544264604,
+        0.9986631009686885,
+        -0.05169132583674098,
+        -0.0001052536583624781,
+        4.869290300973823e-06,
+        0.0018706656281740892,
+        -9.768107064516038e-05,
+        -1.475816809046303e-15
+      ],
+      [
+        2.3998858331061954,
+        -0.03169359472872454,
+        25.36511357497504,
+        1656.3428595562843,
+        -0.04731314070243834,
+        22.911860755144875,
+        220.98962912028952,
+        0.9986654894949643,
+        -0.05164518361252063,
+        -0.00010702528934231305,
+        4.965850786088864e-06,
+        0.0025571969642922566,
+        -8.380460699331192e-05,
+        -3.2195403061035476e-15
+      ],
+      [
+        2.4392344074640597,
+        -0.03359126181130365,
+        26.27443764443909,
+        1665.1059345193823,
+        -0.0491426042285369,
+        23.306124519763785,
+        224.41318669830014,
+        0.9986679173266807,
+        -0.051598243162067625,
+        -0.00010859341681624367,
+        5.051970993068576e-06,
+        0.0019245269775145007,
+        -7.754473009673395e-05,
+        -3.903300843720396e-15
+      ],
+      [
+        2.478582981821924,
+        -0.035561160083265965,
+        27.199186691703897,
+        1674.0031658919688,
+        -0.050983867867923596,
+        23.69591421968162,
+        227.80845405103335,
+        0.9986690922737791,
+        -0.05157550800530485,
+        -0.00011012144274581544,
+        5.133377858069923e-06,
+        0.00012121280428843748,
+        -7.99853337374314e-05,
+        -4.000974573883047e-15
+      ],
+      [
+        2.5179315561797884,
+        -0.03760375478844617,
+        28.139198862868536,
+        1683.0334799976486,
+        -0.05283767469475006,
+        24.08205610283819,
+        231.17751285120798,
+        0.9986679917119721,
+        -0.05159679769257124,
+        -0.0001117784199178603,
+        5.21658282925414e-06,
+        -0.002474167488304457,
+        -9.054128696434939e-05,
+        -3.480141678286153e-15
+      ],
+      [
+        2.5572801305376527,
+        -0.03971961277952234,
+        29.094357695050665,
+        1692.1959470499503,
+        -0.054708563709308905,
+        24.466062753105035,
+        234.52614789399084,
+        0.998664064454558,
+        -0.051672724467504406,
+        -0.00011370567124780385,
+        5.3076359433208665e-06,
+        -0.005317635822992024,
+        -0.00010698333604052185,
+        -2.2391065947287226e-15
+      ],
+      [
+        2.596628704895517,
+        -0.041909520946356055,
+        30.064606285463714,
+        1701.4898345025554,
+        -0.05660308148326805,
+        24.849423591921674,
+        237.85875176994014,
+        0.9986573467830377,
+        -0.05180237776050912,
+        -0.00011598740837519403,
+        5.4109198967248776e-06,
+        -0.00780401773152098,
+        -0.00012581227377243337,
+        -2.979849745184124e-16
+      ],
+      [
+        2.6359772792533813,
+        -0.044174541647863934,
+        31.049941263910295,
+        1710.914542823627,
+        -0.0585281676231062,
+        25.233199637205697,
+        241.17651833258176,
+        0.9986484658065093,
+        -0.05197333063849294,
+        -0.00011863195252325554,
+        5.5282366108608314e-06,
+        -0.009394548848625645,
+        -0.00014295461591301329,
+        2.077044216720911e-15
+      ],
+      [
+        2.6753258536112456,
+        -0.04651600434433957,
+        32.050393758836066,
+        1720.4694986719117,
+        -0.06048995831685193,
+        25.617961271148296,
+        244.4788712875542,
+        0.9986385188050719,
+        -0.052164171072826934,
+        -0.00012156869196834105,
+        5.658406481292664e-06,
+        -0.00974172416285429,
+        -0.00015464990229780887,
+        4.3949836379781255e-15
+      ],
+      [
+        2.71467442796911,
+        -0.04893544710757258,
+        33.066007848284976,
+        1730.1540944265878,
+        -0.06249267426357459,
+        26.00380912115226,
+        247.76512889743205,
+        0.9986288398646269,
+        -0.05234920456019282,
+        -0.00012466285737845206,
+        5.7975082749473065e-06,
+        -0.008779547189358484,
+        -0.00015833800031576684,
+        6.051970259590073e-15
+      ],
+      [
+        2.746682540487563,
+        -0.050962206466967905,
+        33.90337038449925,
+        1738.1272090331393,
+        -0.0641530866083975,
+        26.3182470634078,
+        250.426269055312,
+        0.9986220713674024,
+        -0.05247818007901512,
+        -0.00012717752580908198,
+        5.9132152049162915e-06,
+        -0.007184715997792203,
+        -0.00015481753452103832,
+        6.323207066339679e-15
+      ],
+      [
+        2.778690653006016,
+        -0.05304255094180669,
+        34.750800910166895,
+        1746.1853300648743,
+        -0.0658405955867289,
+        26.632769318337235,
+        253.0766638323285,
+        0.9986168475253029,
+        -0.05257747541745316,
+        -0.0001295931089255663,
+        6.0274861717995985e-06,
+        -0.0051460931780315826,
+        -0.00014615722512864406,
+        5.713291533243682e-15
+      ],
+      [
+        2.810698765524469,
+        -0.055177314585193725,
+        35.608293420654874,
+        1754.3281113603757,
+        -0.06755275931431845,
+        26.946834148058546,
+        255.7163866068387,
+        0.998613408806828,
+        -0.052642710917039634,
+        -0.0001318383043122038,
+        6.137197908563583e-06,
+        -0.0030148883268403997,
+        -0.0001339686214199624,
+        4.4165285366506665e-15
+      ],
+      [
+        2.842706878042922,
+        -0.05736723536467956,
+        36.475824089109004,
+        1762.5552128805118,
+        -0.06928612767799547,
+        27.25985981533526,
+        258.3454498118438,
+        0.998611686351802,
+        -0.05267533463047423,
+        -0.00013387316560030093,
+        6.240121288893982e-06,
+        -0.0011572186177245826,
+        -0.00012046126944545631,
+        2.75095304874634e-15
+      ],
+      [
+        2.874714990561375,
+        -0.05961293108631678,
+        37.35335118398157,
+        1770.866295145237,
+        -0.07103682812871424,
+        27.571327831277976,
+        260.9638248893075,
+        0.9986113137729163,
+        -0.052682364452535456,
+        -0.00013569587781018565,
+        6.335283594500786e-06,
+        0.00011215389680890278,
+        -0.00010805911134701714,
+        1.0754829392301417e-15
+      ],
+      [
+        2.9109277644238576,
+        -0.06222147136375426,
+        38.35812626407053,
+        1780.3698919509807,
+        -0.07303286811983524,
+        27.92099458453182,
+        263.9094494703975,
+        0.9986117721779671,
+        -0.05267364957843398,
+        -0.00013754896232150097,
+        6.434178630313233e-06,
+        0.0005909795047068822,
+        -9.808343553008883e-05,
+        -6.714362342466164e-16
+      ],
+      [
+        2.940339896156497,
+        -0.06439344484438976,
+        39.18347453729537,
+        1788.166885911461,
+        -0.07466057778557299,
+        28.201688489900164,
+        266.27893401801595,
+        0.9986121404937225,
+        -0.05266665146554085,
+        -0.00013895601012726893,
+        6.509326258674705e-06,
+        0.00017414913583405273,
+        -9.470341692851422e-05,
+        -1.6527306458698054e-15
+      ],
+      [
+        2.9638563968017557,
+        -0.06616451674672504,
+        39.84928898418383,
+        1794.4508745848061,
+        -0.07596346616963384,
+        28.423333003081822,
+        268.15190278836855,
+        0.9986120325911139,
+        -0.05266868995244036,
+        -0.00014006764127863543,
+        6.567657257809719e-06,
+        -0.0006200022163851977,
+        -9.542620196449263e-05,
+        -1.840521873442969e-15
+      ],
+      [
+        2.9873728974470146,
+        -0.06796624359529964,
+        40.520288801307444,
+        1800.7786950225636,
+        -0.0772671945506332,
+        28.642483917665796,
+        270.0042030255829,
+        0.9986113273468407,
+        -0.052682055219953394,
+        -0.00014120563614338454,
+        6.6257961178049205e-06,
+        -0.0017144550627700306,
+        -9.900443706290814e-05,
+        -1.6987406445872665e-15
+      ],
+      [
+        2.991532758872659,
+        -0.06828814451218108,
+        40.6395177104037,
+        1801.9025523137489,
+        -0.07749794675867067,
+        28.681010668552204,
+        270.32976775331184,
+        0.998611127767698,
+        -0.05268583759259887,
+        -0.00014141221917553655,
+        6.636158336267144e-06,
+        -0.001928761091708142,
+        -9.989767654093483e-05,
+        -1.6714215733446077e-15
+      ],
+      [
+        2.995692620298303,
+        -0.06861100536805954,
+        40.758906686420374,
+        1803.027762128689,
+        -0.07772874917988612,
+        28.719468571813458,
+        270.6547073603842,
+        0.9986109043334087,
+        -0.052690071811178574,
+        -0.00014162076091805943,
+        6.646559705235778e-06,
+        -0.002147353802305373,
+        -0.00010086048490479513,
+        -1.6437240943119674e-15
+      ],
+      [
+        2.999852481723947,
+        -0.06893482642229622,
+        40.87845548224526,
+        1804.1543221807005,
+        -0.07795960495620702,
+        28.757858372759816,
+        270.97901954100496,
+        0.9986106566992258,
+        -0.05269476429189329,
+        -0.00014183138234386374,
+        6.6570056389068e-06,
+        -0.002369531103410198,
+        -0.00010188939995742311,
+        -1.6160585166974768e-15
+      ],
+      [
+        3.0011406359017885,
+        -0.06903534246870328,
+        40.915515311058385,
+        1804.503513928039,
+        -0.07803106812532967,
+        28.76971518675596,
+        271.0791560086727,
+        0.9986105739047499,
+        -0.05269633309339289,
+        -0.0001418971415037241,
+        6.6602522565523765e-06,
+        -0.002439125272850284,
+        -0.00010222406276849909,
+        -1.6077377680841138e-15
+      ],
+      [
+        3.00242879007963,
+        -0.06913595045869508,
+        40.95259036089027,
+        1804.8528341715453,
+        -0.0781024443521184,
+        28.78153133347825,
+        271.17890817374996,
+        0.9986104887380031,
+        -0.052697946799921035,
+        -0.00014196311989777714,
+        6.6635040465309875e-06,
+        -0.0025089424542543114,
+        -0.00010256445631632141,
+        -1.599456790532876e-15
+      ],
+      [
+        3.0050050984353125,
+        -0.06933753331790304,
+        41.026800926209795,
+        1805.5519846828383,
+        -0.07824484936491395,
+        28.80500121650343,
+        271.3768752684128,
+        0.998610308866268,
+        -0.05270135473596168,
+        -0.00014209598194043767,
+        6.670029671004725e-06,
+        -0.002649278756429455,
+        -0.00010326725227967526,
+        -1.5830529355350623e-15
+      ],
+      [
+        3.007581406790995,
+        -0.06953948216128143,
+        41.10107153938993,
+        1806.2516412577932,
+        -0.07838690696047781,
+        28.82830893138862,
+        271.57330503996485,
+        0.9986101194195662,
+        -0.05270494385572649,
+        -0.00014222977617148565,
+        6.676578646162533e-06,
+        -0.0027901287836715007,
+        -0.00010399098211365367,
+        -1.5668055971181248e-15
+      ],
+      [
+        3.0312400452524226,
+        -0.07140921097618515,
+        41.785535051018385,
+        1812.697010988544,
+        -0.07967683225536214,
+        29.0355661565285,
+        273.3122794022798,
+        0.9986079865682193,
+        -0.05274533063494785,
+        -0.00014350226450186043,
+        6.737966368110572e-06,
+        -0.004056621950366878,
+        -0.0001112123861169177,
+        -1.407870964053447e-15
+      ],
+      [
+        3.05489868371385,
+        -0.07330903670671644,
+        42.47470704895662,
+        1819.181646805524,
+        -0.08093763263118675,
+        29.229333810589836,
+        274.92152055575895,
+        0.9986051039276477,
+        -0.052799863566250396,
+        -0.00014486551045458362,
+        6.802108859213166e-06,
+        -0.005215183532783906,
+        -0.0001192099177630147,
+        -1.2741781276740482e-15
+      ],
+      [
+        3.0785573221752776,
+        -0.07523832377933876,
+        43.16829403445617,
+        1825.7027062889604,
+        -0.08216946832495417,
+        29.409743101430497,
+        276.4009994626733,
+        0.9986015760646989,
+        -0.05286652651221941,
+        -0.000146321622471151,
+        6.869398079851437e-06,
+        -0.00615672034040897,
+        -0.00012715424802718108,
+        -1.1562139678599653e-15
+      ],
+      [
+        3.102215960636705,
+        -0.07719640452124812,
+        43.8659890898078,
+        1832.2571956482986,
+        -0.08337240453497703,
+        29.576896042370958,
+        277.7507381924318,
+        0.9985975648116224,
+        -0.05294222005640929,
+        -0.0001478642347407824,
+        6.939940256846872e-06,
+        -0.006790037112498334,
+        -0.00013420310014889843,
+        -1.0048769485519038e-15
+      ],
+      [
+        3.120664542586555,
+        -0.07874287831470411,
+        44.41271500405841,
+        1837.3897527954841,
+        -0.0842903145519668,
+        29.698071278709563,
+        278.7132288238864,
+        0.9985942151849716,
+        -0.05300535134785395,
+        -0.0001491191419752761,
+        6.997097504761138e-06,
+        -0.00704231684835752,
+        -0.00013870982468015963,
+        -8.980844206765805e-16
+      ],
+      [
+        3.139113124536405,
+        -0.08030613090300617,
+        44.961606989757115,
+        1842.539383008104,
+        -0.08519043756159309,
+        29.81123145726692,
+        279.59690634182317,
+        0.9985907945323066,
+        -0.05306974691391134,
+        -0.0001504092451896353,
+        7.055935274582441e-06,
+        -0.007063953357662636,
+        -0.00014200237065228137,
+        -8.047798587222109e-16
+      ],
+      [
+        3.1575617064862547,
+        -0.08188582459684325,
+        45.51251395378171,
+        1847.704603943399,
+        -0.08607250431171476,
+        29.91636509153894,
+        280.4018235868764,
+        0.9985874122627721,
+        -0.053133346576994166,
+        -0.00015172298195134394,
+        7.116151320681961e-06,
+        -0.006859942977621624,
+        -0.0001439061741935122,
+        -7.2684315072102845e-16
+      ],
+      [
+        3.194458870385954,
+        -0.08509333927245014,
+        46.61984985588426,
+        1858.0767083108028,
+        -0.08778086506289398,
+        30.102425624913845,
+        281.7756901288001,
+        0.9985811213535768,
+        -0.05325146041765926,
+        -0.00015437469022976626,
+        7.239278667341296e-06,
+        -0.0058664258373516635,
+        -0.0001433921992577793,
+        -6.113787264935809e-16
+      ],
+      [
+        3.2233916577517485,
+        -0.08765182491971292,
+        47.49264501096394,
+        1866.2423284988465,
+        -0.08906601284408305,
+        30.225545333360678,
+        282.63330740158386,
+        0.9985770002621889,
+        -0.05332870211878452,
+        -0.00015642129803197395,
+        7.336469611706032e-06,
+        -0.0046990723781387975,
+        -0.00013917030923353915,
+        -5.879447666323983e-16
+      ],
+      [
+        3.252324445117543,
+        -0.09024674216617365,
+        48.36870298952003,
+        1874.4299195586455,
+        -0.09029999025847324,
+        30.328360188634015,
+        283.2983118324213,
+        0.9985738231281799,
+        -0.05338817138346194,
+        -0.00015838938512202465,
+        7.432252703784271e-06,
+        -0.0034162284327712155,
+        -0.00013246571069133682,
+        -5.828618201899954e-16
+      ],
+      [
+        3.2812572324833376,
+        -0.09287655749684942,
+        49.24743006498256,
+        1882.633887994075,
+        -0.09147937118332454,
+        30.41061007788604,
+        283.77122887466874,
+        0.998571606106139,
+        -0.05342962123113242,
+        -0.00016025120478149572,
+        7.5252106176397465e-06,
+        -0.002239965838025576,
+        -0.0001245486912775174,
+        -5.70692134257333e-16
+      ],
+      [
+        3.2864042093564865,
+        -0.09334792306825451,
+        49.403984568641214,
+        1884.0946148299274,
+        -0.09168318240297045,
+        30.42306686920085,
+        283.83527483989707,
+        0.9985713095345752,
+        -0.05343516283518222,
+        -0.00016056956468839947,
+        7.541353226439227e-06,
+        -0.0020584222409967675,
+        -0.00012311597824057595,
+        -5.61158149959255e-16
+      ],
+      [
+        3.2915511862296354,
+        -0.09382033200753669,
+        49.56060109675937,
+        1885.555651818246,
+        -0.09188512691555609,
+        30.4348638450489,
+        283.8932640584205,
+        0.9985710375328336,
+        -0.053440244742961385,
+        -0.0001608842110835172,
+        7.557371278202431e-06,
+        -0.0018881007112294078,
+        -0.00012170269165436588,
+        -5.513026070664023e-16
+      ],
+      [
+        3.2966981631027843,
+        -0.09429377520183307,
+        49.71727651303015,
+        1887.0169703983654,
+        -0.09208518582550479,
+        30.446000479348232,
+        283.9451996849179,
+        0.998570788218972,
+        -0.05344490226069356,
+        -0.000161195242377831,
+        7.5732644237326905e-06,
+        -0.0017298260971308,
+        -0.00012031628208592568,
+        -5.412998449816147e-16
+      ],
+      [
+        3.3044731976480057,
+        -0.09501089901340179,
+        49.95405483472331,
+        1889.2249064566658,
+        -0.09238453998630082,
+        30.46182276701196,
+        284.01454002977704,
+        0.998570449770397,
+        -0.05345122419414998,
+        -0.00016165849487140234,
+        7.597035410718687e-06,
+        -0.0015155159682964676,
+        -0.00011829444001302796,
+        -5.248545050304771e-16
+      ],
+      [
+        3.312248232193227,
+        -0.09573034214242844,
+        50.19095325912003,
+        1891.4333556522768,
+        -0.09268129893775444,
+        30.47672901532099,
+        284.0756175783118,
+        0.998570152207034,
+        -0.053456781655228276,
+        -0.00016211414255652682,
+        7.620523410725239e-06,
+        -0.0013325328151685147,
+        -0.00011637854801773411,
+        -5.082957253017955e-16
+      ],
+      [
+        3.3200232667384486,
+        -0.09645208353524896,
+        50.427964433621014,
+        1893.6422516287325,
+        -0.09297576290693528,
+        30.49083135570422,
+        284.12949996972776,
+        0.9985698890401463,
+        -0.053461696074228626,
+        -0.0001625626276687427,
+        7.643732621158783e-06,
+        -0.0011825865387037869,
+        -0.00011459160163609705,
+        -4.920586320647503e-16
+      ],
+      [
+        3.3299608976332786,
+        -0.09737788902045233,
+        50.73105255413316,
+        1896.4660961303744,
+        -0.09334890288290819,
+        30.5077454709568,
+        284.18848286199864,
+        0.9985695903861048,
+        -0.05346727247683441,
+        -0.00016312639083361464,
+        7.673005653028842e-06,
+        -0.0010412519261524713,
+        -0.00011253126763838518,
+        -4.71984774658753e-16
+      ],
+      [
+        3.3398985285281086,
+        -0.09830738339405844,
+        51.03430228876207,
+        1899.2904693257142,
+        -0.09371839543482859,
+        30.523425350020204,
+        284.2365045773419,
+        0.9985693211890938,
+        -0.05347229819671078,
+        -0.00016368068780381426,
+        7.701861959818874e-06,
+        -0.0009573640137569801,
+        -0.00011075242025772645,
+        -4.526938626116122e-16
+      ],
+      [
+        3.3498361594229387,
+        -0.09924053081474889,
+        51.337701640420164,
+        1902.115264758568,
+        -0.09408419087334671,
+        30.537877786335148,
+        284.27364169788217,
+        0.9985690664470462,
+        -0.0534770535159452,
+        -0.0001642269718023034,
+        7.730333542315682e-06,
+        -0.0009311481995514667,
+        -0.00010928430843404251,
+        -4.3417924574575047e-16
+      ],
+      [
+        3.3684063767347974,
+        -0.10099390557254821,
+        51.905003421912696,
+        1907.394541941015,
+        -0.09475760325072956,
+        30.561611689532885,
+        284.3139967936176,
+        0.9985685628171741,
+        -0.0534864537756557,
+        -0.00016523370623662868,
+        7.782697944271783e-06,
+        -0.0010297427550766975,
+        -0.0001074612801356861,
+        -4.012523185825262e-16
+      ],
+      [
+        3.386976594046656,
+        -0.10275964767879509,
+        52.47270246991042,
+        1912.6741814070417,
+        -0.09541761147507405,
+        30.5811004638953,
+        284.31657633024963,
+        0.998567962763854,
+        -0.053497652016967816,
+        -0.00016622984558273604,
+        7.83419587701193e-06,
+        -0.0013047330703381628,
+        -0.00010685579932588812,
+        -4.1125438410021976e-16
+      ],
+      [
+        3.4020328166662903,
+        -0.10420019641860762,
+        52.93322365255124,
+        1916.9546305436604,
+        -0.09594308491732303,
+        30.593908573620133,
+        284.291948071713,
+        0.9985673586230586,
+        -0.053508924636788434,
+        -0.00016703631913018876,
+        7.875520125417542e-06,
+        -0.0016402238997243236,
+        -0.00010724788522834215,
+        -4.366891689639912e-16
+      ],
+      [
+        3.4113057466050263,
+        -0.10509134675646464,
+        53.216948259521914,
+        1919.5907163877725,
+        -0.09626361236025915,
+        30.600863688808552,
+        284.2685475085759,
+        0.9985669174046127,
+        -0.053517156164034324,
+        -0.00016753488947031275,
+        7.900855669198752e-06,
+        -0.001890872383346068,
+        -0.00010787871067552558,
+        -4.312959877717572e-16
+      ],
+      [
+        3.4205786765437622,
+        -0.10598546511689311,
+        53.50073625644583,
+        1922.2265758980823,
+        -0.09658245857902555,
+        30.607337031086136,
+        284.2409422719892,
+        0.9985664116636749,
+        -0.05352659008926446,
+        -0.0001680369000811387,
+        7.926173332736451e-06,
+        -0.002167499417589887,
+        -0.00010878420507676272,
+        -4.183544672351362e-16
+      ],
+      [
+        3.429851606482498,
+        -0.1068825343986634,
+        53.784582728050154,
+        1924.8621658258164,
+        -0.0968997661340787,
+        30.613377952818087,
+        284.20953828595276,
+        0.9985658352038722,
+        -0.05353734132895269,
+        -0.00016854363965738015,
+        7.951522221928394e-06,
+        -0.002464439662232112,
+        -0.00010994243718996107,
+        -4.032817971933771e-16
+      ],
+      [
+        3.4462125806335115,
+        -0.10847244568857059,
+        54.28552258936523,
+        1929.511549910058,
+        -0.0974560694188568,
+        30.623051728859654,
+        284.1452974375461,
+        0.9985646313407952,
+        -0.05355978659439504,
+        -0.00016945334811616203,
+        7.996496008176663e-06,
+        -0.0030148351403744508,
+        -0.0001124920978098831,
+        -3.7763564377848863e-16
+      ],
+      [
+        3.462573554784525,
+        -0.1100714197052339,
+        54.78660995502695,
+        1934.1597839267686,
+        -0.09800794043440561,
+        30.63149621833453,
+        284.06982005146614,
+        0.9985631848182118,
+        -0.05358674372021096,
+        -0.0001703860669597616,
+        8.041936094140186e-06,
+        -0.0035762049147787735,
+        -0.00011556121784775103,
+        -3.5296429217469806e-16
+      ],
+      [
+        3.4789345289355382,
+        -0.1116793873274003,
+        55.28782560575951,
+        1938.8066894910069,
+        -0.0985555267085402,
+        30.63874978599215,
+        283.9831720970118,
+        0.9985614981821109,
+        -0.053618158548094826,
+        -0.00017134502864585508,
+        8.088021742822887e-06,
+        -0.00411859996802616,
+        -0.00011896731143409703,
+        -3.296907315715355e-16
+      ],
+      [
+        3.5099101021393686,
+        -0.11474800908182577,
+        56.23702096883696,
+        1947.600008333964,
+        -0.09958120509456092,
+        30.649362877742966,
+        283.78868089439493,
+        0.9985577426947949,
+        -0.05368803414575084,
+        -0.00017323680477119018,
+        8.17757205824795e-06,
+        -0.004976246287430361,
+        -0.00012546337560918812,
+        -2.896137178431405e-16
+      ],
+      [
+        3.5343946919875657,
+        -0.11719596400742514,
+        56.98751024565665,
+        1954.5460729186163,
+        -0.10038206407724867,
+        30.65491469404827,
+        283.6068050033933,
+        0.9985543455634573,
+        -0.05375116718747157,
+        -0.00017479843157856454,
+        8.250547939864933e-06,
+        -0.005457050026796427,
+        -0.00013023558673492828,
+        -2.6139045582769156e-16
+      ],
+      [
+        3.558879281835763,
+        -0.11966342948617528,
+        57.738106413103,
+        1961.4873861051303,
+        -0.10117459697660294,
+        30.65802805482109,
+        283.40017182931024,
+        0.9985507107639827,
+        -0.053818636964472345,
+        -0.0001764109921497477,
+        8.325505469260904e-06,
+        -0.0057090494150622865,
+        -0.00013408784178266497,
+        -2.359340587858109e-16
+      ],
+      [
+        3.58336387168396,
+        -0.122150201924399,
+        58.48874949788952,
+        1968.4233397917485,
+        -0.10195901123625273,
+        30.65872801857437,
+        283.1688610142302,
+        0.9985469866188289,
+        -0.05388768075541421,
+        -0.00017806163678438025,
+        8.402239185019896e-06,
+        -0.005716528768930719,
+        -0.00013663834472373303,
+        -2.1298021620372381e-16
+      ],
+      [
+        3.6154318916074843,
+        -0.12543612599947734,
+        59.47187691135541,
+        1977.4986176330362,
+        -0.10297415856334337,
+        30.65598609329035,
+        282.8286886765801,
+        0.998542173557254,
+        -0.05397679350800774,
+        -0.00018025910638413262,
+        8.50490376753146e-06,
+        -0.0053775366555508,
+        -0.0001377663338443484,
+        -1.8638545526600926e-16
+      ],
+      [
+        3.6474999115310087,
+        -0.1287544126894737,
+        60.45485957941839,
+        1986.5624244240319,
+        -0.10397525864988426,
+        30.649043068580227,
+        282.4464971154322,
+        0.9985377492275991,
+        -0.05405858926115289,
+        -0.0001824575705266047,
+        8.608955747396904e-06,
+        -0.004713525726718992,
+        -0.00013621241899480904,
+        -1.6319956054598207e-16
+      ],
+      [
+        3.679567931454533,
+        -0.13210455693326137,
+        61.43754830819508,
+        1995.6132889591938,
+        -0.10496153391885234,
+        30.63776745569942,
+        282.0224995020801,
+        0.998533968812023,
+        -0.0541283846869411,
+        -0.00018461472980009808,
+        8.712973691671901e-06,
+        -0.0038725342443186508,
+        -0.00013239166415250576,
+        -1.4293572000605746e-16
+      ],
+      [
+        3.7116359513780575,
+        -0.1354860602366829,
+        62.41980035935383,
+        2004.6498590275176,
+        -0.10593169305933382,
+        30.621983824216,
+        281.5568965995293,
+        0.9985309236209061,
+        -0.0541845348083216,
+        -0.00018670010394610358,
+        8.81562483800771e-06,
+        -0.0030399596049575754,
+        -0.0001272513671482307,
+        -1.2521729857804512e-16
+      ],
+      [
+        3.750677226849746,
+        -0.13964443069230387,
+        63.61484401546549,
+        2015.6302347532726,
+        -0.10708881863701411,
+        30.596440013931385,
+        280.9341755093155,
+        0.9985281127639158,
+        -0.05423629478890787,
+        -0.0001891224623187857,
+        8.937370919881064e-06,
+        -0.0022864801996721248,
+        -0.00012087158736107026,
+        -1.0661256471327365e-16
+      ],
+      [
+        3.789718502321435,
+        -0.14384742612057774,
+        64.80875143088976,
+        2026.58508532332,
+        -0.10821690981038128,
+        30.56373432762028,
+        280.25042786927236,
+        0.9985259146099515,
+        -0.05427671597869776,
+        -0.00019142893112555423,
+        9.05494402609823e-06,
+        -0.002029016181314355,
+        -0.00011628866830481658,
+        -9.08001871909087e-17
+      ],
+      [
+        3.8287597777931235,
+        -0.14809386940391922,
+        66.00124277763138,
+        2037.5120642993459,
+        -0.10931357671462431,
+        30.52379339510252,
+        279.5059814221862,
+        0.9985237178396799,
+        -0.05431707667098675,
+        -0.00019367182964341424,
+        9.169054973731845e-06,
+        -0.0023306747689177997,
+        -0.00011497436610494015,
+        -7.737754405482151e-17
+      ],
+      [
+        3.867801053264812,
+        -0.1523825010167711,
+        67.19203668816253,
+        2048.408814765291,
+        -0.11037760165071887,
+        30.47674110651241,
+        278.7011397937528,
+        0.9985209455600019,
+        -0.05436799021342653,
+        -0.00019592242491274023,
+        9.281546183918974e-06,
+        -0.0030591521137182695,
+        -0.00011716553225827053,
+        -6.598851966327515e-17
+      ],
+      [
+        3.906842328736501,
+        -0.15671207662378625,
+        68.38087001711318,
+        2059.2730791740646,
+        -0.11141102041890798,
+        30.423389370243175,
+        277.84117463347945,
+        0.9985172561720891,
+        -0.054435705371342895,
+        -0.00019824426308994751,
+        9.394651435162563e-06,
+        -0.003949524547616006,
+        -0.00012189435698264688,
+        -5.631618673210107e-17
+      ],
+      [
+        3.9127975041938576,
+        -0.15737601280987779,
+        68.56202146925466,
+        2060.9272728816336,
+        -0.11156658090064572,
+        30.41486887336504,
+        277.7065126366366,
+        0.9985166058288155,
+        -0.05444763292804405,
+        -0.00019860792873359614,
+        9.412104530725873e-06,
+        -0.004076898624625534,
+        -0.0001227177377621072,
+        -5.4973874597584076e-17
+      ],
+      [
+        3.9187526796512144,
+        -0.15804087418507082,
+        68.74312205269337,
+        2062.580663477813,
+        -0.11172197603714158,
+        30.40634996969347,
+        277.5718452496018,
+        0.9985159349802569,
+        -0.05445993315247974,
+        -0.0001989741199867367,
+        9.429619989036034e-06,
+        -0.004199748696760932,
+        -0.00012355038166925988,
+        -5.366432520573416e-17
+      ],
+      [
+        3.9247078551085712,
+        -0.15870666038175898,
+        68.9241719037105,
+        2064.233252049186,
+        -0.11187724227548393,
+        30.39784236461492,
+        277.4372595402891,
+        0.9985152444340392,
+        -0.054472591429541854,
+        -0.00019934281716507704,
+        9.44720024308053e-06,
+        -0.004317721811284318,
+        -0.00012438881384064135,
+        -5.238676659008047e-17
+      ],
+      [
+        3.9366182060232844,
+        -0.1600410042587042,
+        69.28611998467561,
+        2067.536027422988,
+        -0.11218746106183794,
+        30.380876836528742,
+        277.1684478959119,
+        0.9985138091793683,
+        -0.05449889106725185,
+        -0.00020008765152634372,
+        9.48256952808943e-06,
+        -0.004535610356067703,
+        -0.00012605284900726266,
+        -4.81660926208729e-17
+      ],
+      [
+        3.9485285569379975,
+        -0.1613790403607559,
+        69.6478664557471,
+        2070.8356042333767,
+        -0.1124972911545114,
+        30.36398076885691,
+        276.9001142198048,
+        0.998512307513563,
+        -0.05452639391230606,
+        -0.000200842226911717,
+        9.518228576741115e-06,
+        -0.004726364368754298,
+        -0.00012767198974147404,
+        -4.310461978361866e-17
+      ],
+      [
+        3.9604389078527107,
+        -0.16272076460735263,
+        70.00941215990449,
+        2074.1319881023073,
+        -0.11280677861552699,
+        30.34715965033389,
+        276.6322690065714,
+        0.9985107485802788,
+        -0.054554930944008,
+        -0.00020160614086925423,
+        9.554188997237677e-06,
+        -0.004886080371296226,
+        -0.00012920713283634552,
+        -3.785739844901247e-17
+      ],
+      [
+        3.9894733064604,
+        -0.16600698035686282,
+        70.88993243547101,
+        2082.1543851744295,
+        -0.113560000856937,
+        30.30648324788381,
+        275.98136518938463,
+        0.9985067707060248,
+        -0.05462768233876488,
+        -0.00020350317712117103,
+        9.643108972401214e-06,
+        -0.005132032989501456,
+        -0.00013240852718746847,
+        -2.9131398693512973e-17
+      ],
+      [
+        4.018507705068089,
+        -0.16931504846210357,
+        71.76927825918868,
+        2090.1579220030562,
+        -0.11431185618282433,
+        30.266296719332143,
+        275.33335495284484,
+        0.9985026729937063,
+        -0.054702527200455826,
+        -0.00020543901923670896,
+        9.733726938872531e-06,
+        -0.00515937301051163,
+        -0.0001345296465906281,
+        -2.403634465836107e-17
+      ],
+      [
+        4.047542103675778,
+        -0.17264493010121465,
+        72.64746433405179,
+        2098.142686319355,
+        -0.11506267137013643,
+        30.22659822551018,
+        274.68822108631184,
+        0.9984986299255675,
+        -0.05477627490196286,
+        -0.00020739618988624222,
+        9.825741712099345e-06,
+        -0.004976446033509082,
+        -0.0001353049157727169,
+        -2.105179400406706e-17
+      ],
+      [
+        4.0765765022834675,
+        -0.1759965953418528,
+        73.52450433203111,
+        2106.108761777168,
+        -0.11581252669939718,
+        30.187348761854675,
+        274.0459349854458,
+        0.9984947927704878,
+        -0.054846174712022765,
+        -0.00020935512674014598,
+        9.918655731393879e-06,
+        -0.00462624063318811,
+        -0.00013470757322367428,
+        -1.888848473894061e-17
+      ],
+      [
+        4.119155795005119,
+        -0.18095118422923565,
+        74.80864508948953,
+        2117.7574769082844,
+        -0.11691004664616378,
+        30.130456391597082,
+        273.10911268069935,
+        0.9984897263284053,
+        -0.05493833250991887,
+        -0.00021219487505796982,
+        1.005528006645565e-05,
+        -0.003957857782858591,
+        -0.00013186209987221605,
+        -1.6402793712194163e-17
+      ],
+      [
+        4.16173508772677,
+        -0.18595242935165,
+        76.09037606504782,
+        2129.366431009937,
+        -0.11800410873389917,
+        30.07415359759864,
+        272.1782909493004,
+        0.9984854249728716,
+        -0.05501644729040412,
+        -0.0002149608860995149,
+        1.0190836474603786e-05,
+        -0.003309773881127951,
+        -0.00012772300265361723,
+        -1.4140177134148578e-17
+      ],
+      [
+        4.1691207712068685,
+        -0.18682466926313698,
+        76.31245829925693,
+        2131.376059813161,
+        -0.11819344415055585,
+        30.064429950020276,
+        272.0174389375362,
+        0.9984847604717786,
+        -0.05502850416229048,
+        -0.0002154306751437065,
+        1.0214119447561545e-05,
+        -0.003216789619328659,
+        -0.00012697022659480955,
+        -1.339303984050885e-17
+      ],
+      [
+        4.176506454686967,
+        -0.1876983069513499,
+        76.53446878743289,
+        2133.3845014275803,
+        -0.11838262212723118,
+        30.054715417672842,
+        271.8567652440421,
+        0.9984841144133697,
+        -0.05504022380236218,
+        -0.00021589765961932978,
+        1.023732077123372e-05,
+        -0.003132700064605915,
+        -0.000126236230553426,
+        -1.2308854754330159e-17
+      ],
+      [
+        4.1838921381670655,
+        -0.1885733412219118,
+        76.75640756872771,
+        2135.3917570655235,
+        -0.11857163444604421,
+        30.045009165666336,
+        271.69626956156526,
+        0.9984834845101308,
+        -0.05505164792329335,
+        -0.000216361969703018,
+        1.0260438720342e-05,
+        -0.0030582119860730296,
+        -0.00012552934574179965,
+        -1.1132742781709988e-17
+      ],
+      [
+        4.1986635051272625,
+        -0.19032759288386922,
+        77.20007027329841,
+        2139.4027172683445,
+        -0.11894914792133014,
+        30.02561802951369,
+        271.3758102992254,
+        0.9984822615535253,
+        -0.055073821146651276,
+        -0.00021728353221063757,
+        1.0306432324976316e-05,
+        -0.0029409506574704343,
+        -0.00012427633799829788,
+        -1.7751085475109372e-19
+      ],
+      [
+        4.2134348720874595,
+        -0.1920874148874305,
+        77.64344675798674,
+        2143.4089496729243,
+        -0.11932593504126619,
+        30.006253039510568,
+        271.0560584032722,
+        0.9984810758739101,
+        -0.05509530985069249,
+        -0.00021819673576270373,
+        1.0352114167394283e-05,
+        -0.0028675237124790695,
+        -0.00012323671051710526,
+        1.053221936675469e-17
+      ],
+      [
+        4.2282062390476565,
+        -0.1938527965265584,
+        78.08653737261675,
+        2147.410464297975,
+        -0.11970195186916216,
+        29.986911894776192,
+        270.73701073585426,
+        0.9984799100265184,
+        -0.05511643079142158,
+        -0.00021910319504903972,
+        1.0397504336925938e-05,
+        -0.002839133738064,
+        -0.00012243195414510661,
+        1.729298978349445e-17
+      ],
+      [
+        4.264323210631898,
+        -0.1981926185883201,
+        79.16872137201854,
+        2157.174621789808,
+        -0.12061789654354883,
+        29.93972517208588,
+        269.9598638151053,
+        0.9984770439000473,
+        -0.05516831803092171,
+        -0.00022130064156530494,
+        1.0507385630453927e-05,
+        -0.0029495510585070468,
+        -0.00012141499356024626,
+        2.7213436400474102e-17
+      ],
+      [
+        4.300440182216139,
+        -0.2025654390356944,
+        80.24920402750406,
+        2166.910779169305,
+        -0.12152885339909457,
+        29.892709509976726,
+        269.1868548662911,
+        0.9984739690078918,
+        -0.05522392820160276,
+        -0.00022349231872904033,
+        1.0616116291976453e-05,
+        -0.003277963655595193,
+        -0.00012189199991556804,
+        2.9714790206928767e-17
+      ],
+      [
+        4.33655715380038,
+        -0.20697107331893058,
+        81.32799301955555,
+        2176.6190920654735,
+        -0.12243495206317209,
+        29.845933178006216,
+        268.417923917793,
+        0.9984704950603382,
+        -0.055286687972680895,
+        -0.00022570498838383202,
+        1.0724401518187132e-05,
+        -0.0037422954355160348,
+        -0.00012375233231524257,
+        3.4421998180055956e-17
+      ],
+      [
+        4.372674125384622,
+        -0.21140935305949243,
+        82.40509873170936,
+        2186.299707751924,
+        -0.12333665165297383,
+        29.799495532824526,
+        267.6530104482279,
+        0.9984665342306057,
+        -0.055358158582046534,
+        -0.0002279597912477277,
+        1.0833046658095262e-05,
+        -0.004234226983542943,
+        -0.0001265661397599573,
+        4.205083940831791e-17
+      ],
+      [
+        4.416044435312633,
+        -0.21678189753415109,
+        83.69631375478048,
+        2197.888076227711,
+        -0.12441452700618846,
+        29.744323650551095,
+        266.7397046667862,
+        0.9984611577082603,
+        -0.05545503474810156,
+        -0.0002307399783942251,
+        1.0965009509326248e-05,
+        -0.004710601883787528,
+        -0.0001303336185860947,
+        4.4924034323006214e-17
+      ],
+      [
+        4.459414745240645,
+        -0.22220109023655452,
+        84.98515149640187,
+        2209.436957956569,
+        -0.12548819301854539,
+        29.689930452241445,
+        265.83200795789685,
+        0.9984553097121123,
+        -0.05556022867929039,
+        -0.0002335981937591337,
+        1.109939518107222e-05,
+        -0.004930401531558871,
+        -0.0001334380219806729,
+        3.108894035439125e-17
+      ],
+      [
+        4.502785055168657,
+        -0.22766677419484094,
+        86.27164782710668,
+        2220.9465923180114,
+        -0.12655869449206134,
+        29.63637751182212,
+        264.929833338899,
+        0.9984493592228493,
+        -0.05566707021203476,
+        -0.00023650871152495055,
+        1.1236314515765686e-05,
+        -0.004839049251717428,
+        -0.00013491779748724854,
+        1.3995474411968568e-18
+      ],
+      [
+        4.546155365096668,
+        -0.23317882494720663,
+        87.55583893596565,
+        2232.417216538127,
+        -0.12762647380745198,
+        29.583615313389096,
+        264.0331072388558,
+        0.9984436731229711,
+        -0.05576896768482546,
+        -0.00023943110616336043,
+        1.1375064491672035e-05,
+        -0.004492906767158861,
+        -0.0001344302686269294,
+        -2.7962719129619404e-17
+      ],
+      [
+        4.58952567502468,
+        -0.2387371209300856,
+        88.83775646346233,
+        2243.849064473191,
+        -0.1286912286179087,
+        29.531497023870333,
+        263.1416916276115,
+        0.9984384879017635,
+        -0.05586171041050191,
+        -0.00024232518567883024,
+        1.1514416067039058e-05,
+        -0.0040333356984842824,
+        -0.00013235686062517662,
+        -4.075310723469623e-17
+      ],
+      [
+        4.632895984952691,
+        -0.24434150839074867,
+        90.11742293189715,
+        2255.242348866628,
+        -0.12975174788801755,
+        29.47975502780196,
+        262.25467678515906,
+        0.99843384432468,
+        -0.055944616261118706,
+        -0.00024516477424825717,
+        1.1653093102325096e-05,
+        -0.0036291473045404112,
+        -0.0001295986424072499,
+        -3.296033212122482e-17
+      ],
+      [
+        4.676266294880703,
+        -0.2499917768324529,
+        91.39484981016288,
+        2266.5972450829045,
+        -0.13080668284502237,
+        29.428162274516975,
+        261.37127781527164,
+        0.9984295919896131,
+        -0.056020418337629205,
+        -0.0002479456347038457,
+        1.1790217162340763e-05,
+        -0.0034152446710774952,
+        -0.00012721151892479545,
+        -1.2257541575566885e-17
+      ],
+      [
+        4.719636604808715,
+        -0.2556876635603891,
+        92.67004105153825,
+        2277.913903793888,
+        -0.1318550997955148,
+        29.376618830255875,
+        260.4912190603799,
+        0.9984254552622023,
+        -0.056094062601920215,
+        -0.00025068513377889926,
+        1.1925559817446834e-05,
+        -0.0034510628795217705,
+        -0.0001260300123227673,
+        1.0170935741679808e-17
+      ],
+      [
+        4.768224902129621,
+        -0.26212265590341166,
+        94.0960011113289,
+        2290.5468607356365,
+        -0.13302151065779516,
+        29.31895862329901,
+        259.5092638445283,
+        0.99842059671532,
+        -0.05618044496195073,
+        -0.0002537434063416643,
+        1.2075615098993031e-05,
+        -0.003750300017224715,
+        -0.00012653805957162927,
+        2.9281639350960843e-17
+      ],
+      [
+        4.816813199450527,
+        -0.26861411967562565,
+        95.51916432828945,
+        2303.1322101293076,
+        -0.13417959410933764,
+        29.26151487996714,
+        258.53159782169155,
+        0.9984152088155198,
+        -0.056276103733373335,
+        -0.00025683451140081194,
+        1.2225181379662316e-05,
+        -0.004194445460414105,
+        -0.00012871789319261328,
+        3.5541351844883556e-17
+      ],
+      [
+        4.865401496771433,
+        -0.27516166652933427,
+        96.93954462488975,
+        2315.670157764423,
+        -0.1353302084324532,
+        29.204456247650644,
+        257.55820557975113,
+        0.9984091969869734,
+        -0.05638266771494048,
+        -0.0002599902650179381,
+        1.2375606184453713e-05,
+        -0.00461061785252259,
+        -0.0001316992169915528,
+        2.7603880720360623e-17
+      ],
+      [
+        4.913989794092339,
+        -0.2817649583039113,
+        98.3571641699194,
+        2328.1609096361653,
+        -0.13647445649730142,
+        29.147926922198085,
+        256.58900629903945,
+        0.9984026953173948,
+        -0.05649770113248264,
+        -0.0002632177599028244,
+        1.2527887088770713e-05,
+        -0.0048523483443542416,
+        -0.0001343842500953184,
+        8.575543618209164e-18
+      ],
+      [
+        4.962578091413246,
+        -0.2884237092010637,
+        99.77205089431992,
+        2340.60466923463,
+        -0.1376132862615344,
+        29.091999202269488,
+        255.6239233676357,
+        0.9983959959982603,
+        -0.05661598831929567,
+        -0.00026649895132642947,
+        1.268234410136854e-05,
+        -0.004851601020541164,
+        -0.0001358841035570631,
+        -1.4177605917140098e-17
+      ],
+      [
+        5.016300880486902,
+        -0.2958503660863129,
+        101.33330734939639,
+        2354.308941161848,
+        -0.13886655172131013,
+        29.030839326130852,
+        254.5615957057498,
+        0.9983887485303257,
+        -0.056743656825887015,
+        -0.00027015397130917163,
+        1.2855469502610153e-05,
+        -0.00459451166376551,
+        -0.00013610958578962818,
+        -2.5396624261890058e-17
+      ],
+      [
+        5.070023669560559,
+        -0.30334418534260305,
+        102.89129412702722,
+        2367.956275548847,
+        -0.14011366447811643,
+        28.97025453005463,
+        253.5042143211988,
+        0.998381981754067,
+        -0.05686257530203392,
+        -0.0002737940902862069,
+        1.3030096448471355e-05,
+        -0.0042196300208809144,
+        -0.00013479622619536535,
+        -2.2908498134838206e-17
+      ],
+      [
+        5.123746458634216,
+        -0.3109048022597463,
+        104.44603833291131,
+        2381.5469368264376,
+        -0.14135313205684538,
+        28.910074286448598,
+        252.4517539132269,
+        0.9983757973879754,
+        -0.056971019205817514,
+        -0.00027741272098780493,
+        1.3206347402276475e-05,
+        -0.0038641437135909056,
+        -0.0001347548252285266,
+        -1.633142531762232e-17
+      ],
+      [
+        5.177469247707872,
+        -0.3185318585711145,
+        105.99755588574463,
+        2395.0811884373434,
+        -0.14258675562544387,
+        28.85007950097648,
+        251.4041913621473,
+        0.9983699397793829,
+        -0.05707355210915073,
+        -0.00028097475134421956,
+        1.3381080234924334e-05,
+        -0.0038284763579587585,
+        -0.0001310156666059738,
+        -1.1875767011630435e-17
+      ],
+      [
+        5.219601255563254,
+        -0.32455950966678904,
+        107.21208110996847,
+        2405.6561058408656,
+        -0.1435460479255346,
+        28.803190265319877,
+        250.58603256610422,
+        0.998365435893656,
+        -0.057152231833825395,
+        -0.0002838179020409491,
+        1.3521282766880855e-05,
+        -0.003832884105664985,
+        -0.000134691830102134,
+        -1.0366338187814277e-17
+      ],
+      [
+        5.261733263418636,
+        -0.3306275038347601,
+        108.42463249229375,
+        2416.19661503035,
+        -0.1445011369924404,
+        28.75640145478685,
+        249.77083267064435,
+        0.9983607997743457,
+        -0.057233109687931834,
+        -0.0002867176876277893,
+        1.3664080086776791e-05,
+        -0.003987053859231182,
+        -0.0001380256730477978,
+        2.0974440628285813e-16
+      ],
+      [
+        5.3038652712740175,
+        -0.3367357082628351,
+        109.63521420919609,
+        2426.702840205601,
+        -0.14545426797472394,
+        28.7097279700493,
+        248.9585665785833,
+        0.9983558127005345,
+        -0.057320007501418184,
+        -0.0002896198171085128,
+        1.3805357348348358e-05,
+        -0.004336896556741103,
+        -0.00013647490203884304,
+        2.516798190445952e-16
+      ],
+      [
+        5.345997279129399,
+        -0.34288401048258077,
+        110.84383343280783,
+        2437.174904214163,
+        -0.14640457519175815,
+        28.663269995027363,
+        248.14919982496085,
+        0.9983503322557465,
+        -0.05741536698851631,
+        -0.00029245282469799426,
+        1.3940259841139316e-05,
+        -0.004757646122300225,
+        -0.00013165801259738688,
+        7.206307211511799e-16
+      ],
+      [
+        5.388129286984781,
+        -0.34907225227184124,
+        112.05050179742578,
+        2447.6129284251533,
+        -0.14734990594747324,
+        28.6171485797608,
+        247.34269571825885,
+        0.9983443645274162,
+        -0.05751903860844027,
+        -0.0002951822735013955,
+        1.4066809679236718e-05,
+        -0.005093879201920244,
+        -0.0001271420684412745,
+        -2.4240911156485873e-16
+      ],
+      [
+        5.438594166103664,
+        -0.35653663245723105,
+        113.49328016149563,
+        2460.070749727999,
+        -0.14847324408807522,
+        28.562468571624063,
+        246.38040345968787,
+        0.9983368115221992,
+        -0.057649991977828365,
+        -0.0002983569610603922,
+        1.421096561686975e-05,
+        -0.005245608527703627,
+        -0.0001253928220853224,
+        -2.9276102014823866e-15
+      ],
+      [
+        5.489059045222548,
+        -0.36405745539137074,
+        114.9333151152726,
+        2472.4801106165196,
+        -0.14958582493963998,
+        28.508442011617067,
+        245.42212748359597,
+        0.9983292240363631,
+        -0.057781219441649885,
+        -0.0003015304849545531,
+        1.4354896590686418e-05,
+        -0.005084006351834268,
+        -0.00012856962439996983,
+        -3.2378739240756234e-15
+      ],
+      [
+        5.539523924341431,
+        -0.3716341927252164,
+        116.37063817434348,
+        2484.841212983977,
+        -0.1506891191766358,
+        28.454977611532904,
+        244.46784018720538,
+        0.9983220043258474,
+        -0.05790575551400396,
+        -0.0003048132042835783,
+        1.4507003471762401e-05,
+        -0.004724819130756672,
+        -0.00013432940275600976,
+        1.2628071048394655e-15
+      ],
+      [
+        5.589988803460314,
+        -0.3792664121011665,
+        117.8052743512893,
+        2497.1542575626695,
+        -0.15178576650276765,
+        28.40190678467251,
+        243.51752345944962,
+        0.9983153431473704,
+        -0.05802038486861764,
+        -0.00030825330965345417,
+        1.4671190556576119e-05,
+        -0.004359039623230469,
+        -0.00013954435263801652,
+        7.1038160422002785e-15
+      ],
+      [
+        5.6404536825791975,
+        -0.3869538269999633,
+        119.23723967901941,
+        2509.41944423309,
+        -0.15287784789763156,
+        28.34907508026604,
+        242.5711581836179,
+        0.9983091490680778,
+        -0.05812679402241702,
+        -0.00031181776670475154,
+        1.4845261375887875e-05,
+        -0.004138733705839352,
+        -0.00014248400678950262,
+        9.294467779353714e-15
+      ],
+      [
+        5.690918561698081,
+        -0.3946962499029389,
+        120.66654334002428,
+        2521.6369718110095,
+        -0.15396616922546313,
+        28.296401127376118,
+        241.62871729779803,
+        0.9983031354538154,
+        -0.05822997178692683,
+        -0.0003154297368026168,
+        1.502329863516523e-05,
+        -0.0041231103535221735,
+        -0.0001429435625447679,
+        7.0403106425695725e-15
+      ],
+      [
+        5.741383440816964,
+        -0.4024935051010344,
+        122.09319240885945,
+        2533.8070375280645,
+        -0.15505044902734155,
+        28.243887017987518,
+        240.69016446089623,
+        0.9982969840588289,
+        -0.058335357832485044,
+        -0.00031901954916905537,
+        1.5199425673208966e-05,
+        -0.004286658701271906,
+        -0.00014148616585833354,
+        3.562365400355861e-15
+      ],
+      [
+        5.7918483199358475,
+        -0.4103453696778969,
+        123.5171961539269,
+        2545.9298365522054,
+        -0.15612982449552723,
+        28.191595068334777,
+        239.75545666644555,
+        0.9982904737949332,
+        -0.05844667485594708,
+        -0.0003225498362491346,
+        1.5370115982534503e-05,
+        -0.004554247338446959,
+        -0.00013894651535021498,
+        1.7681399275574085e-15
+      ],
+      [
+        5.842313199054731,
+        -0.41825156193147106,
+        124.9385681737007,
+        2558.005561751722,
+        -0.15720328703242128,
+        28.139612600649933,
+        238.8245483028655,
+        0.9982835261928404,
+        -0.05856520931596889,
+        -0.0003260128775916825,
+        1.553444341796322e-05,
+        -0.004836174827442614,
+        -0.00013627107777922724,
+        1.7605719803839676e-15
+      ],
+      [
+        5.900175444574162,
+        -0.42738311526569234,
+        126.565075570779,
+        2571.7937163807146,
+        -0.15842566014611,
+        28.080495367953386,
+        237.7618014569407,
+        0.9982750774913662,
+        -0.05870901078063485,
+        -0.00032991509255780296,
+        1.5716201612324325e-05,
+        -0.005075626085596989,
+        -0.00013419284973906665,
+        2.731522071598252e-15
+      ],
+      [
+        5.958037690093594,
+        -0.436585116902465,
+        128.1881789345736,
+        2585.5205194414993,
+        -0.15963824544108865,
+        28.021966638517686,
+        236.70392997240884,
+        0.9982663233579034,
+        -0.05885764155035755,
+        -0.00033378387309725735,
+        1.5894414806973337e-05,
+        -0.005160674498200396,
+        -0.00013398007532147162,
+        3.202162446097724e-15
+      ],
+      [
+        6.015899935613025,
+        -0.44585699490142183,
+        129.8079131253866,
+        2599.1862514453173,
+        -0.16084095783296518,
+        27.96403484609124,
+        235.6508813802641,
+        0.9982575407266079,
+        -0.05900638877819195,
+        -0.0003376737768602763,
+        1.6073880912984895e-05,
+        -0.005088878212378835,
+        -0.0001357230177179684,
+        2.8569966937501208e-15
+      ],
+      [
+        6.073762181132457,
+        -0.45519819350778784,
+        131.42431147306016,
+        2612.791190124223,
+        -0.16203445996108673,
+        27.90664515247632,
+        234.60261137713022,
+        0.9982489590361224,
+        -0.05915137165228828,
+        -0.0003416332096623905,
+        1.625875362137018e-05,
+        -0.004917344062608106,
+        -0.00013872635769117956,
+        2.2191199733565602e-15
+      ],
+      [
+        6.1316244266518884,
+        -0.4646082101395688,
+        133.03740282675437,
+        2626.3356108226594,
+        -0.16321992562802856,
+        27.849703005037508,
+        233.5590810806314,
+        0.9982406790114121,
+        -0.05929091216491323,
+        -0.00034568459693454934,
+        1.6450929309935083e-05,
+        -0.0047371790653255785,
+        -0.00014183024036332507,
+        1.7395635003539895e-15
+      ],
+      [
+        6.18948667217132,
+        -0.4740866133153456,
+        134.64721034945543,
+        2639.819786682498,
+        -0.16439856957477042,
+        27.793112628447613,
+        232.52025247913124,
+        0.9982326433799278,
+        -0.059426008217578916,
+        -0.0003498159898182932,
+        1.6649372718573218e-05,
+        -0.004635581412247369,
+        -0.0001439261042808425,
+        1.492251259774199e-15
+      ],
+      [
+        6.2473489176907515,
+        -0.48363303295519827,
+        136.25375251837403,
+        2653.243989094571,
+        -0.16557117298662172,
+        27.73681638599211,
+        231.4861027912095,
+        0.9982246699767257,
+        -0.059559748714950046,
+        -0.000353988355410289,
+        1.6850712879455882e-05,
+        -0.004661230695983332,
+        -0.00014441933362620784,
+        1.3494677212946393e-15
+      ],
+      [
+        6.305211163210183,
+        -0.49324712690418454,
+        137.85704587933154,
+        2666.6084880237727,
+        -0.1667378088517153,
+        27.680812851716954,
+        230.4566077564525,
+        0.9982165329394748,
+        -0.059695929029604376,
+        -0.0003581541675040926,
+        1.705079838730007e-05,
+        -0.0048076297165150815,
+        -0.00014343024583087044,
+        1.1989611020524633e-15
+      ],
+      [
+        6.374869724777001,
+        -0.5049104919026801,
+        139.7829177048037,
+        2682.6187709372057,
+        -0.16813352009155788,
+        27.613849682684588,
+        229.22333979160018,
+        0.9982063084620997,
+        -0.05986661267842205,
+        -0.00036311812940279886,
+        1.728620234555303e-05,
+        -0.005065432013827889,
+        -0.0001412754604750276,
+        1.0052468027809101e-15
+      ],
+      [
+        6.44452828634382,
+        -0.5166707143483716,
+        141.70414792570213,
+        2698.543391432533,
+        -0.169518591616479,
+        27.547549140753652,
+        227.99707888581779,
+        0.9981955372516862,
+        -0.06004590418938639,
+        -0.0003680122569822609,
+        1.7514292409218053e-05,
+        -0.0052951703206888315,
+        -0.0001395116714946988,
+        8.219436331781845e-16
+      ],
+      [
+        6.514186847910638,
+        -0.5285270319381392,
+        143.62078699150172,
+        2714.382848613561,
+        -0.17089228937561093,
+        27.482053342509428,
+        226.77818112364983,
+        0.9981843473447659,
+        -0.060231611580072356,
+        -0.0003728666215485909,
+        1.773764759886557e-05,
+        -0.005412888808260088,
+        -0.0001392497819990953,
+        6.959474565013539e-16
+      ],
+      [
+        6.583845409477457,
+        -0.5404786472495526,
+        145.5328924308723,
+        2730.1376568616283,
+        -0.17225446657048366,
+        27.417416602083314,
+        225.5667485605756,
+        0.998172997411918,
+        -0.06041940505025525,
+        -0.0003777371052089763,
+        1.796123074473825e-05,
+        -0.005390184891018895,
+        -0.0001407654175985289,
+        6.375004698674915e-16
+      ],
+      [
+        6.653503971044275,
+        -0.5525247756590158,
+        147.44052291183468,
+        2745.8083333683117,
+        -0.1736057010836914,
+        27.35360183884255,
+        224.36270117624954,
+        0.9981617481955902,
+        -0.06060496835086084,
+        -0.00038267701531646397,
+        1.818989476295694e-05,
+        -0.005264148116760734,
+        -0.0001435070914369879,
+        6.14248238833142e-16
+      ],
+      [
+        6.723162532611093,
+        -0.5646646902585335,
+        149.34373298783905,
+        2761.395389486275,
+        -0.17494712950956098,
+        27.29051555543904,
+        223.16591133711304,
+        0.9981507469989581,
+        -0.06078588900751687,
+        -0.0003877125574689657,
+        1.842615314052828e-05,
+        -0.005114219477865581,
+        -0.0001463780406339159,
+        5.847441079948761e-16
+      ],
+      [
+        6.792821094177912,
+        -0.5768977443813259,
+        151.2425703919222,
+        2776.899327734546,
+        -0.17627995830860868,
+        27.228052610811186,
+        221.9762577918927,
+        0.9981399694015508,
+        -0.06096259151088799,
+        -0.00039283257917307183,
+        1.866916088500386e-05,
+        -0.00502624859532381,
+        -0.00014829140083273427,
+        5.135703501884521e-16
+      ],
+      [
+        6.856149583247434,
+        -0.5880994181271846,
+        152.96509982696628,
+        2790.92272341933,
+        -0.17748489969013342,
+        27.1717327876825,
+        220.90077589180143,
+        0.9981301848894947,
+        -0.06112255673004216,
+        -0.0003975206058436938,
+        1.8892361791723795e-05,
+        -0.005054128027815868,
+        -0.0001486877432769494,
+        4.4393587830222936e-16
+      ],
+      [
+        6.919478072316956,
+        -0.5993771369889023,
+        154.68408041714977,
+        2804.8782312723574,
+        -0.17868326855587463,
+        27.115855643864702,
+        219.83098194346277,
+        0.9981202281545791,
+        -0.06128490029121511,
+        -0.0004022051440768609,
+        1.911438559477523e-05,
+        -0.005174315923970434,
+        -0.00014806844866527966,
+        3.9071620497200467e-16
+      ],
+      [
+        6.982806561386478,
+        -0.610730500752717,
+        156.39953904087878,
+        2818.766181061356,
+        -0.17987459328704497,
+        27.060453607545544,
+        218.76679770102243,
+        0.9981099749785557,
+        -0.06145161739245705,
+        -0.0004068650665470311,
+        1.9333109151277236e-05,
+        -0.005344319029870449,
+        -0.0001469523950746404,
+        -1.6612225685278589e-16
+      ],
+      [
+        7.046135050456,
+        -0.6221590551683401,
+        158.1115063699183,
+        2832.5869154603315,
+        -0.18105831845979922,
+        27.00556584915933,
+        217.70812641415327,
+        0.9980993770937194,
+        -0.06162345658236407,
+        -0.00041149563643645356,
+        1.9547914628480488e-05,
+        -0.005518289536583361,
+        -0.00014594567899923694,
+        -8.560362660427298e-16
+      ],
+      [
+        7.109463539525522,
+        -0.6336623090273394,
+        159.82001587655,
+        2846.340777709168,
+        -0.18223399531951653,
+        26.95122875194612,
+        216.65487958672574,
+        0.9980884640348577,
+        -0.06179990247505065,
+        -0.00041610752688735854,
+        1.9759654867902197e-05,
+        -0.005655960912074014,
+        -0.00014552118023233518,
+        -1.4483265286183102e-15
+      ],
+      [
+        7.172792028595044,
+        -0.6452397498930423,
+        161.52510287242063,
+        2860.0281078810303,
+        -0.1834014128507672,
+        26.897463772112545,
+        215.60697774402675,
+        0.9980773227911843,
+        -0.06197952192912691,
+        -0.0004207214274434099,
+        1.9970200202975356e-05,
+        -0.005733768283191289,
+        -0.00014591100781652218,
+        -1.7539771369412389e-15
+      ],
+      [
+        7.236120517664566,
+        -0.6568908609247719,
+        163.22680324375415,
+        2873.649241473877,
+        -0.18456063434439174,
+        26.844269996693665,
+        214.56433751989937,
+        0.9980660639629736,
+        -0.06216051826957279,
+        -0.00042536043542993474,
+        2.01817440553263e-05,
+        -0.005748974468400134,
+        -0.00014707106088284678,
+        -1.6973211269326934e-15
+      ],
+      [
+        7.299449006734088,
+        -0.6686151365716576,
+        164.92515217905353,
+        2887.2045091091213,
+        -0.1857119619821121,
+        26.791626362974064,
+        213.52687953124956,
+        0.9980547860757105,
+        -0.06234130568422498,
+        -0.00043004281438169066,
+        2.0396107090810672e-05,
+        -0.00571733723313123,
+        -0.00014873351856095767,
+        -1.3200944166439908e-15
+      ],
+      [
+        7.36277749580361,
+        -0.6804120936618445,
+        166.62018321897656,
+        2900.6942368720693,
+        -0.18685583669692044,
+        26.739499348798553,
+        212.4945348376634,
+        0.9980435483928525,
+        -0.0625209387748866,
+        -0.00043477719472266357,
+        2.0614243029991947e-05,
+        -0.005665916155626073,
+        -0.00015051708251150335,
+        -7.519406595084168e-16
+      ],
+      [
+        7.441907419493829,
+        -0.6952539475925512,
+        168.73354071154728,
+        2917.4582936405777,
+        -0.18827539717064284,
+        26.675027674428147,
+        211.21167141597923,
+        0.9980295748662641,
+        -0.06274360109424777,
+        -0.0004407620546696097,
+        2.089196270262941e-05,
+        -0.005623897914439786,
+        -0.0001523044458233617,
+        1.1538094347877618e-16
+      ],
+      [
+        7.521037343184047,
+        -0.7102077112491638,
+        170.8418242199262,
+        2934.1211554543443,
+        -0.18968458444921005,
+        26.61124321316542,
+        209.93653772873768,
+        0.9980155670995676,
+        -0.06296601320475316,
+        -0.000446797513061119,
+        2.1172963736093757e-05,
+        -0.005636541999289064,
+        -0.00015329556145991525,
+        7.589724920000505e-16
+      ],
+      [
+        7.600167266874266,
+        -0.7252725793441883,
+        172.945086302922,
+        2950.6834190885297,
+        -0.19108348648476872,
+        26.548123952424323,
+        208.66900606408217,
+        0.9980013826808436,
+        -0.06319040486659278,
+        -0.0004528540088922713,
+        2.1454343802408236e-05,
+        -0.005708912375678022,
+        -0.0001535367443385342,
+        9.101027928174706e-16
+      ],
+      [
+        7.696303025687341,
+        -0.743723615691,
+        175.49366337230327,
+        2970.670387748293,
+        -0.19276889329477725,
+        26.472339881951765,
+        207.1391393960818,
+        0.9979837852831556,
+        -0.06346764670229282,
+        -0.000460219332486876,
+        2.1794451232763914e-05,
+        -0.005855633226248789,
+        -0.00015322834450991885,
+        5.646448014791743e-16
+      ],
+      [
+        7.7924387845004155,
+        -0.7623360391427488,
+        178.03499465636992,
+        2990.5107033852664,
+        -0.19443821656409074,
+        26.397569004319955,
+        205.62006864226564,
+        0.9979656477568577,
+        -0.06375209889245104,
+        -0.0004675759643409381,
+        2.2130604658847822e-05,
+        -0.006019032027692479,
+        -0.00015300616470644243,
+        -1.1696594427605283e-16
+      ],
+      [
+        7.88857454331349,
+        -0.7811081276793396,
+        180.56918936361933,
+        3010.2055007278227,
+        -0.1960909008362911,
+        26.323848506819232,
+        204.11153511924945,
+        0.997946982819476,
+        -0.06404351499916151,
+        -0.0004749407278806577,
+        2.246406002342518e-05,
+        -0.0061447956215355615,
+        -0.00015357624532097062,
+        -4.944178095043149e-16
+      ],
+      [
+        7.984710302126565,
+        -0.8000382601583356,
+        183.09635059351467,
+        3029.7557964539355,
+        -0.19772687470769298,
+        26.251193981166423,
+        202.61331087088553,
+        0.9979279452126745,
+        -0.06433943946368259,
+        -0.0004823549407200091,
+        2.2798677375115682e-05,
+        -0.006204057741073721,
+        -0.00015512469386278347,
+        -2.4672728111514434e-16
+      ],
+      [
+        8.08084606093964,
+        -0.8191248735273292,
+        185.6165784066829,
+        3049.16256093524,
+        -0.19934667917556126,
+        26.179578723239338,
+        201.12518964208857,
+        0.9979087167069326,
+        -0.06463700381232497,
+        -0.0004898548940863493,
+        2.3138148922863158e-05,
+        -0.006208542901796993,
+        -0.00015724162781397552,
+        4.508164259488907e-16
+      ],
+      [
+        8.176981819752715,
+        -0.838366469952058,
+        188.12996866445042,
+        3068.4267460947754,
+        -0.200951187558269,
+        26.108940002093895,
+        199.64696923761733,
+        0.9978893959883717,
+        -0.06493462875135464,
+        -0.0004974505364503049,
+        2.3483796289188286e-05,
+        -0.006200452906092304,
+        -0.00015921549810964957,
+        1.1064141559203958e-15
+      ],
+      [
+        8.27311757856579,
+        -0.8577616201474864,
+        190.63661152166262,
+        3087.5492903323316,
+        -0.2025411654871883,
+        26.039208721076466,
+        198.17846231101075,
+        0.9978699479169965,
+        -0.06523279953741762,
+        -0.0005051223554567692,
+        2.3834006301579202e-05,
+        -0.006226256871707073,
+        -0.00016048324254163622,
+        1.2896215289507998e-15
+      ],
+      [
+        8.374791072592975,
+        -0.8784392566348036,
+        193.28041409907374,
+        3107.6204433226426,
+        -0.20420720105688056,
+        25.966391189534523,
+        196.63567819662086,
+        0.9978490558601262,
+        -0.06555154978571066,
+        -0.0005132785314679537,
+        2.4205375283051277e-05,
+        -0.00631852339414661,
+        -0.00016104218634406425,
+        1.1933059957869635e-15
+      ],
+      [
+        8.47646456662016,
+        -0.89928526250624,
+        195.91687390549893,
+        3127.5353794860202,
+        -0.20585704102723879,
+        25.89453446327178,
+        195.10329733457493,
+        0.9978276820220376,
+        -0.06587601662381533,
+        -0.0005214662332719717,
+        2.4575821112323698e-05,
+        -0.006461733352158345,
+        -0.0001613267722252791,
+        9.859890675686453e-16
+      ],
+      [
+        8.578138060647346,
+        -0.9202980966228625,
+        198.54608130654904,
+        3147.295061880161,
+        -0.2074902905707433,
+        25.823650369606064,
+        193.58107697480114,
+        0.997805728967504,
+        -0.06620759057702284,
+        -0.0005296783562084013,
+        2.4944108538057692e-05,
+        -0.006619828652244242,
+        -0.0001618012525919181,
+        7.850120081336757e-16
+      ],
+      [
+        8.679811554674531,
+        -0.9414761148093737,
+        201.1681336969094,
+        3166.9004871166444,
+        -0.2091067766821314,
+        25.75375525710299,
+        192.06879051629943,
+        0.9977832026536162,
+        -0.06654608384641553,
+        -0.0005379253244459246,
+        2.531099155259586e-05,
+        -0.0067551281598610124,
+        -0.00016267963670369803,
+        6.190077582987085e-16
+      ],
+      [
+        8.781485048701716,
+        -0.9628176318231223,
+        203.7831305058709,
+        3186.352646446865,
+        -0.2107065024137478,
+        25.684853917118524,
+        190.56622717693656,
+        0.9977601990262615,
+        -0.06688997750106743,
+        -0.0005462253866095712,
+        2.5678496205991254e-05,
+        -0.006842295411007865,
+        -0.00016397732347310122,
+        4.879090715703639e-16
+      ],
+      [
+        8.883158542728902,
+        -0.9843209634715157,
+        206.3911706730899,
+        3205.652515841472,
+        -0.21228966280674805,
+        25.61692762441737,
+        189.07318888651434,
+        0.9977368525370602,
+        -0.0672372182869429,
+        -0.0005545940790673676,
+        2.6048812815047533e-05,
+        -0.006879621232956913,
+        -0.00016554392907060933,
+        3.854295657696641e-16
+      ],
+      [
+        9.00524652036951,
+        -1.0103538580740037,
+        209.51377703497977,
+        3228.627308461381,
+        -0.2141691747816025,
+        25.536606000501965,
+        187.29275962259993,
+        0.997708480270254,
+        -0.06765687749863523,
+        -0.0005647436625117336,
+        2.6498866930376488e-05,
+        -0.006884807416475279,
+        -0.00016756571526941298,
+        2.932767015841118e-16
+      ],
+      [
+        9.12733449801012,
+        -1.0366150798164222,
+        212.62663933403752,
+        3251.3853919258786,
+        -0.21602580518415868,
+        25.457557804244875,
+        185.52551083308873,
+        0.9976798347063232,
+        -0.06807799476196044,
+        -0.0005750150702078964,
+        2.69564190505486e-05,
+        -0.006901580761483378,
+        -0.0001695094712553017,
+        2.2469249972080546e-16
+      ],
+      [
+        9.249422475650729,
+        -1.0631015740257899,
+        215.7299253522188,
+        3273.9285264777163,
+        -0.2178602194017622,
+        25.379682877523276,
+        183.7711091515607,
+        0.9976507761639276,
+        -0.06850250161346672,
+        -0.0005854022436220816,
+        2.7419867548374644e-05,
+        -0.007002686993951107,
+        -0.00017122737818343165,
+        1.7239786548758086e-16
+      ],
+      [
+        9.371510453291338,
+        -1.0898106239130088,
+        218.8237787069634,
+        3296.258279917077,
+        -0.2196729630229201,
+        25.302924262387236,
+        182.02925659494187,
+        0.997620926342378,
+        -0.06893569189550135,
+        -0.0005958924253056338,
+        2.78850266899189e-05,
+        -0.007226782257876463,
+        -0.00017275793875763166,
+        1.323859241108294e-16
+      ],
+      [
+        9.493598430931947,
+        -1.1167396271834404,
+        221.90833606905795,
+        3318.376146495347,
+        -0.22146428434995782,
+        25.227307886349287,
+        180.29966085473106,
+        0.9975898769721212,
+        -0.06938319428537061,
+        -0.0006064760925076288,
+        2.8347687706629024e-05,
+        -0.007529181461842099,
+        -0.0001742541332222847,
+        1.0192712159519528e-16
+      ],
+      [
+        9.615686408572556,
+        -1.1438860050935298,
+        224.9837390684516,
+        3340.2835893857527,
+        -0.22323422710834337,
+        25.15292613587241,
+        178.5820292170273,
+        0.9975574904516294,
+        -0.06984680112705789,
+        -0.0006171433622006999,
+        2.8806184384297213e-05,
+        -0.0077860012983635785,
+        -0.00017566293600705267,
+        7.879144318774741e-17
+      ],
+      [
+        9.638495054883064,
+        -1.148981418159847,
+        225.55728695197547,
+        3344.3531596632965,
+        -0.2235625640851559,
+        25.13918558268043,
+        178.26244024593626,
+        0.9975512883568771,
+        -0.06993528039663625,
+        -0.000619144479290429,
+        2.8891341633489227e-05,
+        -0.007802233806609173,
+        -0.0001757774491221656,
+        7.511752609538068e-17
+      ],
+      [
+        9.661303701193573,
+        -1.1540843100946405,
+        226.13052195685194,
+        3348.4154462903175,
+        -0.2238901554924181,
+        25.125496609971925,
+        177.94325653993906,
+        0.9975450643172371,
+        -0.07002397672582276,
+        -0.000621147002627697,
+        2.8976488374204597e-05,
+        -0.007806115455279797,
+        -0.00017586053947586113,
+        7.162342805008031e-17
+      ],
+      [
+        9.684112347504081,
+        -1.159194664755892,
+        226.70344526511926,
+        3352.470457739441,
+        -0.22421699012117233,
+        25.111856800501062,
+        177.6244764823353,
+        0.9975388302480606,
+        -0.07011270866175813,
+        -0.0006231506242430884,
+        2.9061698597571097e-05,
+        -0.007801319124212412,
+        -0.0001759441171062375,
+        6.829985292306483e-17
+      ],
+      [
+        9.729729640125099,
+        -1.1694376704851546,
+        227.84836257292395,
+        3360.558702961992,
+        -0.22486834940189296,
+        25.08471545301558,
+        176.98811858102275,
+        0.9975263649594395,
+        -0.07028979658492628,
+        -0.0006271618183423073,
+        2.9232635227846883e-05,
+        -0.0077758488036030245,
+        -0.0001761820607979909,
+        6.40336892282056e-17
+      ],
+      [
+        9.775346932746116,
+        -1.1797103104466145,
+        228.9920461561839,
+        3368.6179598046065,
+        -0.22551660755111247,
+        25.05775014935717,
+        176.35335615993026,
+        0.9975139183946791,
+        -0.07046617565394259,
+        -0.0006311801840903551,
+        2.9404528690935854e-05,
+        -0.007736691489861469,
+        -0.00017654592945956054,
+        4.518234574140023e-17
+      ],
+      [
+        9.820964225367133,
+        -1.1900124482432437,
+        230.1345034235585,
+        3376.648297950334,
+        -0.22616174966641217,
+        25.030948656208626,
+        175.72017839548278,
+        0.9975015029463782,
+        -0.07064167435015198,
+        -0.00063520862405287,
+        2.9577694614709184e-05,
+        -0.0076943234551945915,
+        -0.00017705462032331735,
+        3.185270436188723e-17
+      ],
+      [
+        9.921906879777866,
+        -1.2129130725189115,
+        232.65823779471165,
+        3394.3156451637474,
+        -0.22757834440378488,
+        24.97215068774602,
+        174.3246184872619,
+        0.9974740542617593,
+        -0.07102813386364307,
+        -0.0006441786213017912,
+        2.9966047787561025e-05,
+        -0.007645935452206627,
+        -0.00017863345177370328,
+        1.7207287596719254e-17
+      ],
+      [
+        10.004312108890508,
+        -1.2317137003993612,
+        234.71412457291746,
+        3408.6342946709788,
+        -0.22872361791840845,
+        24.924638156354902,
+        173.19089729344458,
+        0.9974515428155056,
+        -0.07134350501774057,
+        -0.000651567867852626,
+        3.0287896377168038e-05,
+        -0.007668064002122622,
+        -0.00018032746339773,
+        1.2620443031482536e-17
+      ],
+      [
+        10.08671733800315,
+        -1.250608307482633,
+        236.76611235210837,
+        3422.8597193683927,
+        -0.22985910340991209,
+        24.877532481692818,
+        172.0620656725046,
+        0.9974287545115296,
+        -0.07166132425866821,
+        -0.0006590269784611603,
+        3.061313421750974e-05,
+        -0.007760581464507304,
+        -0.00018216194259197327,
+        1.0086468456896671e-17
+      ],
+      [
+        10.16912256711579,
+        -1.2695960983355177,
+        238.81423526365603,
+        3436.9923191697185,
+        -0.23098507132667156,
+        24.830833075366442,
+        170.93804548031017,
+        0.997405510304468,
+        -0.07198403073604827,
+        -0.0006665581274151674,
+        3.094028778575145e-05,
+        -0.007914131059242402,
+        -0.0001839351666227149,
+        8.366535465461677e-18
+      ],
+      [
+        10.318508402311611,
+        -1.3042529671889778,
+        242.51735568960402,
+        3462.3766024859624,
+        -0.23300251413056064,
+        24.747266495502462,
+        168.91242782073147,
+        0.9973618444955515,
+        -0.07258628735208006,
+        -0.0006803775545983733,
+        3.153365786199702e-05,
+        -0.008272110527088494,
+        -0.00018665391548113012,
+        6.871256387104398e-18
+      ],
+      [
+        10.416310959001898,
+        -1.3271051570890087,
+        244.9350592206108,
+        3478.8321408836573,
+        -0.23430707931970193,
+        24.693363767835045,
+        167.5944674983932,
+        0.9973320176852757,
+        -0.07299482296745094,
+        -0.0006895280222295961,
+        3.191985266520475e-05,
+        -0.008503148243963542,
+        -0.00018796704623244432,
+        5.8944213207106035e-18
+      ],
+      [
+        10.514113515692184,
+        -1.3500842900551995,
+        247.34752594814066,
+        3495.159098123746,
+        -0.23559882099274393,
+        24.64016363988388,
+        166.28284720697744,
+        0.997301310990207,
+        -0.0734130572595578,
+        -0.0006987384403460689,
+        3.2303740663324345e-05,
+        -0.008665536607699772,
+        -0.00018903019652975327,
+        4.919915647341043e-18
+      ],
+      [
+        10.61191607238247,
+        -1.3731891026280656,
+        249.75482470286312,
+        3511.358091708211,
+        -0.23687760225892504,
+        24.587686319436706,
+        164.97745700579043,
+        0.997269966370165,
+        -0.07383759684087739,
+        -0.0007080007112994337,
+        3.268712845824801e-05,
+        -0.008737680713486691,
+        -0.0001900821443398629,
+        4.0687697393363285e-18
+      ],
+      [
+        10.709718629072757,
+        -1.396418332560478,
+        252.15702459357786,
+        3527.429720646323,
+        -0.2381432506566214,
+        24.53590870828421,
+        163.67819608202413,
+        0.9972382751065533,
+        -0.07426440509035206,
+        -0.0007173177882360191,
+        3.3073066645477555e-05,
+        -0.008737468158332547,
+        -0.00019135089892307613,
+        3.3745277364248697e-18
+      ],
+      [
+        10.84073505366698,
+        -1.4277289699987716,
+        255.36713737509143,
+        3548.760733470288,
+        -0.23981802780415457,
+        24.467530644421846,
+        161.94714757936688,
+        0.9971955660585657,
+        -0.07483579685712662,
+        -0.0007299115688163574,
+        3.359887393238355e-05,
+        -0.008716631272461424,
+        -0.00019358785377336182,
+        2.636523234480405e-18
+      ],
+      [
+        10.935791309767657,
+        -1.4505823257699735,
+        257.69059577075205,
+        3564.095401518951,
+        -0.24101840505579264,
+        24.418553073487782,
+        160.69787681986566,
+        0.9971643985239215,
+        -0.07524994478212521,
+        -0.000739145213043133,
+        3.398781873403128e-05,
+        -0.008742016858224311,
+        -0.00019556133148756076,
+        2.2154702942227194e-18
+      ],
+      [
+        11.030847565868333,
+        -1.47354921009423,
+        260.0094214593872,
+        3579.3115809291303,
+        -0.2422066409608048,
+        24.370042661061245,
+        159.45410922737292,
+        0.9971328409926585,
+        -0.07566687828917913,
+        -0.0007484749978638179,
+        3.4381816738038266e-05,
+        -0.00884820966873668,
+        -0.00019768026412096622,
+        1.866528817014599e-18
+      ],
+      [
+        11.12590382196901,
+        -1.4966284780230306,
+        262.3236584730478,
+        3594.4097906320744,
+        -0.24338299895417811,
+        24.321979344391984,
+        158.21576047098776,
+        0.9971005995896954,
+        -0.07609036826221045,
+        -0.0007579051876469118,
+        3.477829436485821e-05,
+        -0.00904212732551143,
+        -0.0001997753562731742,
+        1.5751146378225328e-18
+      ],
+      [
+        11.220960078069686,
+        -1.5198190094821515,
+        264.6333499185785,
+        3609.390541352798,
+        -0.2445477183901277,
+        24.27438245106934,
+        156.98274089639983,
+        0.9970673889198287,
+        -0.07652406658251362,
+        -0.0007674328649947061,
+        3.517428319169422e-05,
+        -0.009295754731710442,
+        -0.00020172085854608325,
+        1.3310716646070838e-18
+      ],
+      [
+        11.34293278943959,
+        -1.5497374751541622,
+        267.59047751900283,
+        3628.442037024761,
+        -0.2460253863630104,
+        24.214070247693304,
+        155.40823309092514,
+        0.9970231480684114,
+        -0.07709807756256323,
+        -0.000779788427619422,
+        3.5678955030225285e-05,
+        -0.009624920907611318,
+        -0.00020399117736698033,
+        1.0753761545196868e-18
+      ],
+      [
+        11.4367198655186,
+        -1.5728642460124977,
+        269.85929620089945,
+        3642.9607766281088,
+        -0.24714880638207615,
+        24.168328109146984,
+        154.20331082637037,
+        0.9969878990621348,
+        -0.07755244914487056,
+        -0.0007893798680068233,
+        3.606395760942062e-05,
+        -0.009829089429821017,
+        -0.00020557192127779067,
+        9.142564864331067e-19
+      ],
+      [
+        11.530506941597611,
+        -1.5960958541609327,
+        272.12385133941376,
+        3657.366741056488,
+        -0.24826109080686032,
+        24.12316903307636,
+        153.0032909287633,
+        0.9969518007883157,
+        -0.078015047679626,
+        -0.0007990446194260818,
+        3.644817334416616e-05,
+        -0.009958589371430283,
+        -0.00020709561258444484,
+        7.784579115615455e-19
+      ],
+      [
+        11.624294017676622,
+        -1.6194312551846155,
+        274.38419744805486,
+        3671.660386405768,
+        -0.2493621851081648,
+        24.07859085411354,
+        151.8080975428711,
+        0.9969151150985716,
+        -0.07848238804815368,
+        -0.0008087817932295875,
+        3.6834280170099706e-05,
+        -0.010014053461109295,
+        -0.00020867547471255148,
+        6.638663259299143e-19
+      ],
+      [
+        11.718081093755632,
+        -1.64286939882235,
+        276.6403877946882,
+        3685.842161908755,
+        -0.25045204147810096,
+        24.034559996410728,
+        150.61766197307458,
+        0.9968780721105741,
+        -0.07895146592889007,
+        -0.0008185954693538548,
+        3.7225019427960864e-05,
+        -0.010023345979417791,
+        -0.0002104086866299467,
+        5.670364181016253e-19
+      ],
+      [
+        11.830682395509069,
+        -1.6711436091372451,
+        279.3437617755587,
+        3702.7217224726846,
+        -0.25174568475646303,
+        23.98234238295339,
+        149.19461019673935,
+        0.9968332528509375,
+        -0.07951529212805128,
+        -0.0008304910681340276,
+        3.7702589907531954e-05,
+        -0.01003573711780057,
+        -0.00021275696963204727,
+        4.702974830256617e-19
+      ],
+      [
+        11.943283697262505,
+        -1.6995625816480195,
+        282.04129190513925,
+        3719.441420801382,
+        -0.2530232436675858,
+        23.930749287470775,
+        147.77821203027662,
+        0.9967879412885015,
+        -0.0800811999525169,
+        -0.0008425248692383218,
+        3.818937447174963e-05,
+        -0.010110747037094915,
+        -0.0002153767210162762,
+        3.909670626023377e-19
+      ],
+      [
+        12.055884999015941,
+        -1.7281245161573957,
+        284.73304566690814,
+        3736.0019998406624,
+        -0.25428493329396445,
+        23.87972224701574,
+        146.3683530806314,
+        0.9967417751307911,
+        -0.08065359222872906,
+        -0.0008547098004486976,
+        3.868266661291409e-05,
+        -0.010286233674785154,
+        -0.00021816488183630273,
+        3.2573871122948354e-19
+      ],
+      [
+        12.168486300769377,
+        -1.7568276392920434,
+        287.41908622516456,
+        3752.4041895032324,
+        -0.2555310228848506,
+        23.829249992746785,
+        144.96491645881204,
+        0.9966942928619414,
+        -0.08123799391373195,
+        -0.0008670523588115961,
+        3.917822729754544e-05,
+        -0.010557810722054261,
+        -0.00022098391327358627,
+        2.719777332013576e-19
+      ],
+      [
+        12.29994439393496,
+        -1.7905138440960253,
+        290.54780210792677,
+        3771.3537312238054,
+        -0.2569663782227213,
+        23.77107848204459,
+        143.33441495267263,
+        0.9966367023980373,
+        -0.08194110230028923,
+        -0.0008816591879791548,
+        3.9754488364406734e-05,
+        -0.010934205737248025,
+        -0.0002241667029963043,
+        2.2098102987879593e-19
+      ],
+      [
+        12.404633593778348,
+        -1.8174746269158173,
+        293.0339813902299,
+        3786.2915934718653,
+        -0.2580946694504797,
+        23.72538165925534,
+        142.04194510117358,
+        0.9965890279024934,
+        -0.08251865619210877,
+        -0.0008934394069595799,
+        4.02099701088099e-05,
+        -0.011227171371748276,
+        -0.00022657870334480559,
+        1.876525019026877e-19
+      ],
+      [
+        12.509322793621736,
+        -1.8445528437941403,
+        295.5154082551145,
+        3801.0944230227747,
+        -0.2592099240802579,
+        23.680292792507675,
+        140.75470142781572,
+        0.9965398544307715,
+        -0.0831102266499505,
+        -0.0009053445156362073,
+        4.066329734989242e-05,
+        -0.011464880501486883,
+        -0.0002289126146355558,
+        1.5962298329318043e-19
+      ],
+      [
+        12.614011993465125,
+        -1.8717471315486414,
+        297.9921468326599,
+        3815.762761782944,
+        -0.26031214201327524,
+        23.635831297272855,
+        139.47259102877882,
+        0.9964894295294281,
+        -0.08371259564977554,
+        -0.000917371663154129,
+        4.1117133453967616e-05,
+        -0.011627148666062358,
+        -0.0002312425938472608,
+        1.3602027955947816e-19
+      ],
+      [
+        12.718701193308513,
+        -1.8990561254951754,
+        300.4642621983107,
+        3830.297142712672,
+        -0.26140129682666785,
+        23.591984714036695,
+        138.19553044895804,
+        0.9964380482296193,
+        -0.08432200717284513,
+        -0.0009295222456892819,
+        4.1574959578825964e-05,
+        -0.01172265015578289,
+        -0.00023365723769888351,
+        1.1611499561850983e-19
+      ],
+      [
+        12.865684810686352,
+        -1.9375889075634767,
+        303.9274278401962,
+        3850.478342242035,
+        -0.2629084092342967,
+        23.531372364800745,
+        136.41091353496165,
+        0.9963646766408856,
+        -0.08518475436814045,
+        -0.0009468036998976237,
+        4.2230076439205586e-05,
+        -0.011816343634511757,
+        -0.0002373232746036245,
+        8.65443988280741e-20
+      ],
+      [
+        12.973565119592086,
+        -1.9660104575386967,
+        306.4636285931802,
+        3865.124021732082,
+        -0.2639982208783527,
+        23.487526980338743,
+        135.10719108253278,
+        0.9963099532953408,
+        -0.08582243633211292,
+        -0.0009596637667513208,
+        4.272156701120168e-05,
+        -0.011902656335803351,
+        -0.00024025603809303326,
+        6.988280430727753e-20
+      ],
+      [
+        13.08144542849782,
+        -1.994548836785526,
+        308.9951254741564,
+        3879.6293312404628,
+        -0.26507429911666225,
+        23.44416031862581,
+        133.80856025983803,
+        0.9962542756135886,
+        -0.0864662704081452,
+        -0.0009726854985520999,
+        4.322085059670594e-05,
+        -0.012051754693240454,
+        -0.00024337322502386834,
+        5.853641764342377e-20
+      ],
+      [
+        13.189325737403555,
+        -2.0232025700399774,
+        311.52196891502456,
+        3893.9948150976197,
+        -0.26613677967113225,
+        23.40124144232769,
+        132.51493884848804,
+        0.9961973078457913,
+        -0.08711990003582545,
+        -0.0009858778636997396,
+        4.372504417742783e-05,
+        -0.012281035640727788,
+        -0.0002466170063514128,
+        5.01909077157e-20
+      ],
+      [
+        13.29720604630929,
+        -2.0519701985612437,
+        314.0442071891056,
+        3908.221009078612,
+        -0.2671858265964674,
+        23.358770225523195,
+        131.22624321471673,
+        0.9961386753431913,
+        -0.08778741632914684,
+        -0.000999246476050545,
+        4.4230649577176006e-05,
+        -0.012581221211447752,
+        -0.0002499197167462162,
+        4.827756062376178e-20
+      ],
+      [
+        13.455915925693203,
+        -2.094496176705535,
+        317.74657400026706,
+        3928.8980137987633,
+        -0.268705033873971,
+        23.29716524529127,
+        129.33912474506732,
+        0.9960488705379273,
+        -0.08880008926056487,
+        -0.001019236654713661,
+        4.497211356586199e-05,
+        -0.013079258992493016,
+        -0.00025478275929678094,
+        7.110943914910408e-19
+      ],
+      [
+        13.572668910835402,
+        -2.125932625954243,
+        320.46397911891415,
+        3943.918026055103,
+        -0.2698044699667226,
+        23.252557657611547,
+        127.95741280716788,
+        0.9959798834845547,
+        -0.08957030560469904,
+        -0.0010341883807691292,
+        4.551371870756243e-05,
+        -0.013438554347751663,
+        -0.0002583181722651644,
+        2.9538354555554215e-17
+      ],
+      [
+        13.6894218959776,
+        -2.157496540358141,
+        323.1762134548834,
+        3958.7770367737157,
+        -0.2708886023985955,
+        23.20859924169718,
+        126.5811092529369,
+        0.9959085159777497,
+        -0.09036019475471789,
+        -0.0010493463354769106,
+        4.6053408413579175e-05,
+        -0.01374518941215657,
+        -0.0002618353881333466,
+        7.101327377794675e-17
+      ],
+      [
+        13.8061748811198,
+        -2.189186136922629,
+        325.88335304563043,
+        3973.4756711909504,
+        -0.27195745834167895,
+        23.165305853848196,
+        125.2101123485809,
+        0.9958350246428798,
+        -0.09116643176052919,
+        -0.0010647102831839897,
+        4.65945498298176e-05,
+        -0.013981764820216114,
+        -0.0002653903656614193,
+        1.0820855419811474e-16
+      ],
+      [
+        13.922927866261999,
+        -2.220999633518006,
+        328.58547481024374,
+        3988.0145432057357,
+        -0.2730110382256593,
+        23.122661960131403,
+        123.84432887625124,
+        0.9957597265793203,
+        -0.09198513808884971,
+        -0.0010802838894871953,
+        4.714155123738999e-05,
+        -0.014159163103681652,
+        -0.00026906066497709363,
+        1.2802951267359646e-16
+      ],
+      [
+        14.085961813353116,
+        -2.2656279512112243,
+        332.3504619890606,
+        4008.0504618436557,
+        -0.27445671229231733,
+        23.064112235391335,
+        121.9457069543394,
+        0.9956519233932933,
+        -0.09314472490582522,
+        -0.0011023992533432433,
+        4.792173937323777e-05,
+        -0.014377373392026955,
+        -0.00027450274508548033,
+        1.1050719163152754e-16
+      ],
+      [
+        14.204687031875425,
+        -2.2982744287140613,
+        335.08625510396735,
+        4022.4467280471345,
+        -0.2754908113672546,
+        23.02214529123828,
+        120.56924424222245,
+        0.9955714881272463,
+        -0.09400045446499426,
+        -0.0011187890634400837,
+        4.850387599623806e-05,
+        -0.014560863669276215,
+        -0.0002787479625099249,
+        5.890323720148829e-17
+      ],
+      [
+        14.323412250397734,
+        -2.3310427520431345,
+        337.8170964645103,
+        4036.6798773014575,
+        -0.2765092721040913,
+        22.98068300833719,
+        119.19787548008891,
+        0.9954891289712188,
+        -0.09486849995405794,
+        -0.0011354354084423786,
+        4.909618381583611e-05,
+        -0.014808244412998418,
+        -0.00028322351661771614,
+        4.951612508277664e-18
+      ],
+      [
+        14.442137468920043,
+        -2.3639310715944206,
+        340.5430447769516,
+        4050.750508750808,
+        -0.27751222503259404,
+        22.939695834468015,
+        117.8315142290444,
+        0.9954044201381061,
+        -0.0957529148716896,
+        -0.0011523514784986014,
+        4.9695209213150985e-05,
+        -0.015136000646297798,
+        -0.00028788917674932383,
+        -3.741441471287178e-17
+      ],
+      [
+        14.560862687442352,
+        -2.3969375540773195,
+        343.2641561337186,
+        4064.6592111476903,
+        -0.2784998205766022,
+        22.899182495218255,
+        116.47006855944626,
+        0.9953168741194166,
+        -0.09665829330856042,
+        -0.0011695473187144938,
+        5.029657506502379e-05,
+        -0.015535307645203252,
+        -0.0002926839835451795,
+        -6.317670548574232e-17
+      ],
+      [
+        14.727812813776477,
+        -2.443547342870814,
+        347.0824808734711,
+        4083.9446353533767,
+        -0.27986285620359597,
+        22.843064387307603,
+        114.56375442771682,
+        0.9951882243324065,
+        -0.0979732954276092,
+        -0.001194211913261033,
+        5.113943677273339e-05,
+        -0.01615849374178048,
+        -0.00029954629333999887,
+        -5.788318235443936e-17
+      ],
+      [
+        14.852763845864722,
+        -2.4785791891743623,
+        349.93415934908825,
+        4098.170679998767,
+        -0.2808635001589748,
+        22.801751934334334,
+        113.14308766751094,
+        0.9950873792741654,
+        -0.0989918791348331,
+        -0.0012130484656078184,
+        5.176599571789072e-05,
+        -0.016629183323344524,
+        -0.00030473304101301515,
+        -1.914671870956559e-17
+      ],
+      [
+        14.977714877952966,
+        -2.5137350260268185,
+        352.78071479851155,
+        4112.21953061144,
+        -0.28184753925423567,
+        22.761070561847394,
+        111.72750858276306,
+        0.9949826542737041,
+        -0.10003869849596207,
+        -0.001232210198487799,
+        5.2390473203693784e-05,
+        -0.017061024913608877,
+        -0.00030997471933039784,
+        2.636370592607409e-17
+      ],
+      [
+        15.10266591004121,
+        -2.549012782464958,
+        355.62222650226437,
+        4126.09181619292,
+        -0.2828150089984406,
+        22.721036628122366,
+        110.31691614247404,
+        0.9948742474240378,
+        -0.1011109731059339,
+        -0.0012517011823201482,
+        5.301666392978291e-05,
+        -0.017435979709496466,
+        -0.00031531743590671124,
+        6.530887241292545e-17
+      ],
+      [
+        15.227616942129455,
+        -2.5844103894242645,
+        358.4587748161225,
+        4139.788153618864,
+        -0.28376591241927984,
+        22.68163981750185,
+        108.91121538600491,
+        0.9947624238870311,
+        -0.1022052588602313,
+        -0.0012715291100658564,
+        5.364947464902722e-05,
+        -0.01775981471735459,
+        -0.00032083013565745573,
+        8.99929238747441e-17
+      ],
+      [
+        15.39474055277627,
+        -2.631938900024278,
+        362.2450703676549,
+        4157.833182542818,
+        -0.2850118744545078,
+        22.629880225734585,
+        107.03856939958474,
+        0.9946078222507263,
+        -0.10369908712402191,
+        -0.0012985986010668035,
+        5.451374220017473e-05,
+        -0.018160393116092226,
+        -0.0003285827539149491,
+        8.945536443811367e-17
+      ],
+      [
+        15.526750000917001,
+        -2.6696269446260055,
+        365.22976762245486,
+        4171.8659829740445,
+        -0.2859751466097996,
+        22.589696438490314,
+        105.56532565157826,
+        0.9944816040188443,
+        -0.10490260742890377,
+        -0.0013204469890472884,
+        5.521392594309952e-05,
+        -0.018491028492479838,
+        -0.0003350781314250811,
+        5.773248995677909e-17
+      ],
+      [
+        15.658759449057733,
+        -2.7074409383119367,
+        368.20919767574503,
+        4185.704642463823,
+        -0.2869200475166772,
+        22.55007114761619,
+        104.09722414237879,
+        0.9943514236720631,
+        -0.10612929516623283,
+        -0.0013427316365512345,
+        5.59288938454035e-05,
+        -0.018877921960682737,
+        -0.00034192291154131637,
+        1.6038660205890982e-17
+      ],
+      [
+        15.790768897198465,
+        -2.7453784620663026,
+        371.1834322480334,
+        4199.349832783799,
+        -0.28784668179522316,
+        22.510966593678912,
+        102.63416708069185,
+        0.9942167258596141,
+        -0.10738339287578844,
+        -0.0013654753549493751,
+        5.6655142218047884e-05,
+        -0.01934447326366866,
+        -0.000349099950967201,
+        -2.6089201585873546e-17
+      ],
+      [
+        15.922778345339196,
+        -2.783437113250793,
+        374.1525391666818,
+        4212.802213231781,
+        -0.28875518861998234,
+        22.47236919213824,
+        101.17605586348716,
+        0.9940768303997634,
+        -0.10867021371913779,
+        -0.0013886990467623565,
+        5.738763752927175e-05,
+        -0.01989278743662552,
+        -0.00035656602110867714,
+        -5.852674916305354e-17
+      ],
+      [
+        16.079671368014623,
+        -2.8288239963272197,
+        377.674742285347,
+        4228.540484940289,
+        -0.28981157270007374,
+        22.42717121790312,
+        99.44938213214152,
+        0.9939029118327251,
+        -0.1102489014479273,
+        -0.0014169483278179782,
+        5.825987410389009e-05,
+        -0.020624150324184087,
+        -0.0003657411327963158,
+        -6.86375280228175e-17
+      ],
+      [
+        16.23656439069005,
+        -2.8743746386452522,
+        381.1899147419047,
+        4244.008378001759,
+        -0.29084274912987884,
+        22.382743487522056,
+        97.7293759987149,
+        0.9937198919640184,
+        -0.111885985647178,
+        -0.0014459244670576034,
+        5.9129151976651766e-05,
+        -0.021397783441724418,
+        -0.00037520249366980517,
+        -6.241373959179164e-17
+      ],
+      [
+        16.393457413365475,
+        -2.920085094032894,
+        384.6981800674157,
+        4259.206925629991,
+        -0.29184883910680626,
+        22.339125585327228,
+        96.01586520119926,
+        0.9935272784656148,
+        -0.1135831791163797,
+        -0.001475649732493935,
+        5.999488185719129e-05,
+        -0.022168957785687508,
+        -0.00038495505380123146,
+        -5.219268263158684e-17
+      ],
+      [
+        16.5503504360409,
+        -2.9659514325996366,
+        388.19966687713503,
+        4274.137134426802,
+        -0.2928299130792753,
+        22.29634157034464,
+        94.30868666256633,
+        0.9933248973122328,
+        -0.11533928084400534,
+        -0.0015061480652614942,
+        6.086105618214692e-05,
+        -0.02290927755263264,
+        -0.0003950505393604745,
+        -4.3256802605654694e-17
+      ],
+      [
+        16.72307251287968,
+        -3.0166208380897617,
+        392.04673816077707,
+        4290.264525225032,
+        -0.29388107241852296,
+        22.250205255338557,
+        92.43640464448403,
+        0.9930907656022616,
+        -0.11733777999632228,
+        -0.0015406514838259147,
+        6.182297476242168e-05,
+        -0.02368044687227909,
+        -0.00040665671807311944,
+        -3.670015968447715e-17
+      ],
+      [
+        16.895794589718456,
+        -3.067469184725445,
+        395.8859241855862,
+        4306.06916946777,
+        -0.2949019580668477,
+        22.205043763397764,
+        90.57141224394191,
+        0.9928447206846575,
+        -0.11940142749515517,
+        -0.0015761739450237745,
+        6.280348806567002e-05,
+        -0.02442855020173346,
+        -0.00041890590136107797,
+        -3.2536879488453484e-17
+      ],
+      [
+        17.068516666557233,
+        -3.1184912486969374,
+        399.7173891558501,
+        4321.55230553958,
+        -0.2958925878702069,
+        22.160787093883282,
+        88.71352818870822,
+        0.9925864250295461,
+        -0.12152943429490626,
+        -0.0016127749245375927,
+        6.381050438259534e-05,
+        -0.02520469995150912,
+        -0.00043191793572000184,
+        -2.870877986220858e-17
+      ],
+      [
+        17.24123874339601,
+        -3.169681811440972,
+        403.5412836786801,
+        4336.71514334405,
+        -0.29685304014034025,
+        22.117357666836007,
+        86.8625781021916,
+        0.9923149223365042,
+        -0.1237260188350201,
+        -0.0016505227352245676,
+        6.484528634640108e-05,
+        -0.026063900258090678,
+        -0.0004457589982011559,
+        -2.4698804728966858e-17
+      ],
+      [
+        17.413960820234788,
+        -3.221035670119426,
+        407.3577453404172,
+        4351.558865783296,
+        -0.2977834521633539,
+        22.074697999595255,
+        85.01838686877745,
+        0.992028644125595,
+        -0.12599993133856735,
+        -0.0016894893501087072,
+        6.590216765524394e-05,
+        -0.027041290912304596,
+        -0.00046043899104877535,
+        -2.0993552968898252e-17
+      ],
+      [
+        17.60482627556807,
+        -3.2779676283717656,
+        411.56661447947937,
+        4367.59205825627,
+        -0.298776855558077,
+        22.028429798455676,
+        82.98811922973199,
+        0.9916928452650317,
+        -0.12861527756546892,
+        -0.0017340521109976271,
+        6.708512015067236e-05,
+        -0.028260061525236274,
+        -0.0004776129051414797,
+        -1.9172108546124632e-17
+      ],
+      [
+        17.79569173090135,
+        -3.3350857236039118,
+        415.76674026952776,
+        4383.238490417468,
+        -0.299733972137327,
+        21.98308721931794,
+        80.96564040256956,
+        0.9913340873253277,
+        -0.13135119425053954,
+        -0.0017802839670566888,
+        6.827247997609817e-05,
+        -0.02959801290887901,
+        -0.0004957740458924733,
+        2.0848225504689517e-16
+      ],
+      [
+        17.98655718623463,
+        -3.3923830432279374,
+        419.9583011047648,
+        4398.499625349809,
+        -0.3006549223646511,
+        21.93869934988816,
+        78.950703523186,
+        0.9909500486528127,
+        -0.13421723034443825,
+        -0.001828277809546386,
+        6.945817000916469e-05,
+        -0.03101375117699339,
+        -0.0005149576698285138,
+        5.364976358778021e-16
+      ],
+      [
+        18.17742264156791,
+        -3.449852693014962,
+        424.14148159090604,
+        4413.376879305897,
+        -0.3015397488534368,
+        21.895290157374276,
+        76.9430669916488,
+        0.9905388065240733,
+        -0.13721883196177764,
+        -0.0018781311333906589,
+        7.064393893231983e-05,
+        -0.03247321524784872,
+        -0.0005352552545910064,
+        6.966434897979049e-16
+      ],
+      [
+        18.368288096901193,
+        -3.507487777353449,
+        428.3164693384038,
+        4427.871622896539,
+        -0.3023884161718469,
+        21.85285755572069,
+        74.94249674696883,
+        0.9900986640036475,
+        -0.1403589496372737,
+        -0.001929952442581357,
+        7.183778090792563e-05,
+        -0.03396599680411617,
+        -0.000556807309901071,
+        6.198089517695013e-16
+      ],
+      [
+        18.559153552234473,
+        -3.5652813905739653,
+        432.48344929957426,
+        4441.985183731855,
+        -0.30320086358235704,
+        21.8113705975639,
+        72.94877370683334,
+        0.9896278038792109,
+        -0.14364063316516398,
+        -0.001983865077683146,
+        7.304981309508433e-05,
+        -0.035507780034859125,
+        -0.0005797801220136118,
+        3.8701641016028345e-16
+      ],
+      [
+        18.750019007567754,
+        -3.6232266144593024,
+        436.6425981520274,
+        4455.71884887236,
+        -0.3039770496909828,
+        21.770779198023877,
+        70.9616945464845,
+        0.989123935328988,
+        -0.147069420810508,
+        -0.0020400083343669628,
+        7.428791988669965e-05,
+        -0.037131423624569344,
+        -0.0006043381309120261,
+        1.170030934346434e-16
+      ],
+      [
+        18.940884462901035,
+        -3.68131652260624,
+        440.79408149960204,
+        4469.0738672163125,
+        -0.30471695055425463,
+        21.731027365042802,
+        68.98106341095011,
+        0.9885840774355105,
+        -0.1506544949519087,
+        -0.002098536402349135,
+        7.555515531439187e-05,
+        -0.03887388015526862,
+        -0.0006306293094696949,
+        -7.222615915059705e-17
+      ],
+      [
+        19.160009857916293,
+        -3.7481767848013554,
+        445.55099048755324,
+        4483.94093274532,
+        -0.3055216493915255,
+        21.68636392164359,
+        66.71487811300446,
+        0.9879150671501371,
+        -0.1549794423571418,
+        -0.002168887313768993,
+        7.704308351566849e-05,
+        -0.041058038331233136,
+        -0.0006631230917454716,
+        -1.211506144928994e-16
+      ],
+      [
+        19.37913525293155,
+        -3.8152081322912963,
+        450.2982220950894,
+        4498.31229650618,
+        -0.3062784900224869,
+        21.642690990538437,
+        64.4566500561041,
+        0.9871870636701237,
+        -0.1595494579027846,
+        -0.0022428732680614305,
+        7.855854515495056e-05,
+        -0.04346468636474449,
+        -0.0006982759024173785,
+        -6.679566920639917e-18
+      ],
+      [
+        19.59826064794681,
+        -3.8824000726246886,
+        455.0359890622478,
+        4512.18967068491,
+        -0.30698741219380815,
+        21.599975879967666,
+        62.20609139027404,
+        0.9863925170233374,
+        -0.16438879920241967,
+        -0.002320786054633922,
+        8.009183704965312e-05,
+        -0.046103999307660334,
+        -0.0007363046806449807,
+        1.809009814728687e-16
+      ],
+      [
+        19.817386042962067,
+        -3.949742095069255,
+        459.7644985898273,
+        4525.574704855252,
+        -0.30764830150959444,
+        21.558197931511295,
+        59.96291895186843,
+        0.9855230852318319,
+        -0.16952206234894132,
+        -0.0024029407239879526,
+        8.163512819538921e-05,
+        -0.04897760589441488,
+        -0.0007774668471496695,
+        3.510577914506304e-16
+      ],
+      [
+        20.036511437977325,
+        -4.017223656341629,
+        464.48395378934595,
+        4538.468987135009,
+        -0.3082609768966953,
+        21.517336744777836,
+        57.726856805871435,
+        0.9845696066579672,
+        -0.17497374377351507,
+        -0.002489680338137854,
+        8.318429710862902e-05,
+        -0.052088951240909245,
+        -0.0008220718721846101,
+        4.415507581580964e-16
+      ],
+      [
+        20.343119545325326,
+        -4.111860338665565,
+        471.07276100448547,
+        4555.69027553795,
+        -0.3090368392674134,
+        21.461641130507363,
+        54.60950923410975,
+        0.9830746670978684,
+        -0.18318470143998206,
+        -0.0026194714132038595,
+        8.536072444843327e-05,
+        -0.05686987444941234,
+        -0.0008909683821362773,
+        4.2770195554245125e-16
+      ],
+      [
+        20.649727652673327,
+        -4.206720253262938,
+        477.64474304935004,
+        4571.957725911923,
+        -0.30971698007109166,
+        21.407570081725734,
+        51.50486806104969,
+        0.9813624689735152,
+        -0.19214357016475428,
+        -0.0027601449170260362,
+        8.755269809564843e-05,
+        -0.06220995743315824,
+        -0.0009684645460559139,
+        5.168909152685782e-16
+      ],
+      [
+        20.95633576002133,
+        -4.301773909241829,
+        484.2003783733792,
+        4587.27513244683,
+        -0.3103004295901917,
+        21.354986536502707,
+        48.41228012535305,
+        0.9793936799391895,
+        -0.2019360251624976,
+        -0.0029130269164049116,
+        8.976689957918998e-05,
+        -0.06820425848009994,
+        -0.0010558532242770043,
+        -4.107176925472868e-16
+      ],
+      [
+        21.26294386736933,
+        -4.396991493867241,
+        490.7400998678542,
+        4601.646095583403,
+        -0.3107860771646776,
+        21.30373375886848,
+        45.331133828271746,
+        0.9771198499420424,
+        -0.21266239054490604,
+        -0.00307962952977975,
+        9.200357219596898e-05,
+        -0.07497134491375382,
+        -0.0011546062500639327,
+        -2.609807682090295e-15
+      ],
+      [
+        21.56955197471733,
+        -4.49234283268464,
+        497.26429072557255,
+        4615.074034592918,
+        -0.31117268280094323,
+        21.25364818959308,
+        42.260857101239274,
+        0.9744809918603962,
+        -0.22443984887777313,
+        -0.003261669692202837,
+        9.425205662372239e-05,
+        -0.0826437226447344,
+        -0.001266388234592279,
+        -6.0840948793830995e-15
+      ],
+      [
+        21.876160082065333,
+        -4.587797354778927,
+        503.7732840541212,
+        4627.562199501663,
+        -0.3114589015226843,
+        21.2045700120526,
+        39.20091674407684,
+        0.9714029624167718,
+        -0.2374031305251119,
+        -0.003461086593540138,
+        9.649055591580562e-05,
+        -0.09136118678323425,
+        -0.0013930669565188983,
+        -9.322442268106977e-15
+      ],
+      [
+        22.182768189413334,
+        -4.683324066304249,
+        510.2673650470696,
+        4639.113683146034,
+        -0.3116433223265954,
+        21.156348301660003,
+        36.15082052477464,
+        0.9677943913991344,
+        -0.2517042678265237,
+        -0.0036800565535645095,
+        9.868822556431821e-05,
+        -0.10126977545886565,
+        -0.0015367235099953622,
+        -1.0299015849359988e-14
+      ],
+      [
+        22.489376296761336,
+        -4.778891539078529,
+        516.7467741971345,
+        4649.731434281978,
+        -0.31172453194634636,
+        21.108842403515023,
+        33.11012180360284,
+        0.9635428795973643,
+        -0.2675120791960034,
+        -0.003921002967655262,
+        0.00010080731200947949,
+        -0.1125247889778649,
+        -0.0016996562547558702,
+        -8.570028021008415e-15
+      ],
+      [
+        22.837549744359293,
+        -4.88742366726098,
+        524.0870255407985,
+        4660.659964281254,
+        -0.31168996455791864,
+        21.05560308921516,
+        29.668109275944865,
+        0.9577592331850809,
+        -0.28752504256376726,
+        -0.00422465643173122,
+        0.00010306247922415755,
+        -0.12715179590706321,
+        -0.001911231390418687,
+        -5.047687850299358e-15
+      ],
+      [
+        23.18572319195725,
+        -4.995920081693268,
+        531.4088487053177,
+        4670.3920245031195,
+        -0.31151913790068825,
+        21.00296556643326,
+        26.237227177511212,
+        0.9507157481576405,
+        -0.31001516735591766,
+        -0.004564378828593836,
+        0.00010508253866067509,
+        -0.14400034465916342,
+        -0.0021548529265133986,
+        -3.650848953768155e-15
+      ],
+      [
+        23.53389663955521,
+        -5.104333193993336,
+        538.7124336928991,
+        4678.931423224847,
+        -0.31121139189103086,
+        20.950825842266607,
+        22.817105019536015,
+        0.9420935466214718,
+        -0.33529947012247296,
+        -0.004944774663931003,
+        0.00010677329729004954,
+        -0.1633587717721145,
+        -0.0024346708940448897,
+        -7.71508234959464e-15
+      ],
+      [
+        23.882070087153167,
+        -5.212615400406706,
+        545.9979481646228,
+        4686.281861829681,
+        -0.3107674014576887,
+        20.899164796686765,
+        19.407491896576413,
+        0.9314912819134267,
+        -0.36370907986614315,
+        -0.0053706390045668365,
+        0.00010801483133554396,
+        -0.1855245030346009,
+        -0.002754861521724117,
+        -1.4963380493194333e-14
+      ],
+      [
+        24.230243534751125,
+        -5.320719635269132,
+        553.2655724847829,
+        4692.446974755833,
+        -0.31018966663864284,
+        20.848084941088786,
+        16.00826503116685,
+        0.9184078462685663,
+        -0.3955752116899095,
+        -0.005846733646573912,
+        0.00010865015633690186,
+        -0.210792329561781,
+        -0.0031195128338305333,
+        -1.7873005502785697e-14
+      ],
+      [
+        24.578416982349083,
+        -5.428600096348011,
+        560.5155489411213,
+        4697.430376845073,
+        -0.3094830136500067,
+        20.797848538994174,
+        12.619446777376778,
+        0.9022217649320377,
+        -0.4312077245413325,
+        -0.006377469886430068,
+        0.00010847622465357731,
+        -0.2394505403129413,
+        -0.0035326312963742013,
+        -1.1946854547482687e-14
+      ],
+      [
+        24.92659042994704,
+        -5.536213162275931,
+        567.7482452590988,
+        4701.235719861014,
+        -0.30865523796775507,
+        20.748919784962247,
+        9.241231370098683,
+        0.8821678705098721,
+        -0.47086618280819453,
+        -0.006966490126997624,
+        0.0001072372792439043,
+        -0.2717876570617064,
+        -0.003998237581067367,
+        -1.3483602234949584e-15
+      ],
+      [
+        25.274763877545,
+        -5.64351860360445,
+        574.9642361298698,
+        4703.866756831507,
+        -0.30771822473165605,
+        20.702032617945605,
+        5.874006453874238,
+        0.8573126742227248,
+        -0.5147223519469813,
+        -0.007616117190441961,
+        0.00010461461708542949,
+        -0.3080994892679799,
+        -0.004520391397024383,
+        3.4390286716122807e-15
+      ],
+      [
+        25.544320922023445,
+        -5.726360995021977,
+        580.5399585345141,
+        4705.099683886198,
+        -0.30692888294573756,
+        20.66783251841952,
+        3.274980138796184,
+        0.8340653000770171,
+        -0.551587188499763,
+        -0.00816094787539367,
+        0.0001013840594991036,
+        -0.3391187450599386,
+        -0.004965799745089262,
+        -6.195246129476527e-15
+      ],
+      [
+        25.81387796650189,
+        -5.8089845468108665,
+        586.1068013910318,
+        4705.632978184899,
+        -0.306096812607241,
+        20.636294034320077,
+        0.6830853326017979,
+        0.8066659334637354,
+        -0.5909226340292487,
+        -0.008741150927289472,
+        9.686157500723453e-05,
+        -0.372746919105428,
+        -0.0054478781720075815,
+        -3.0463909690049526e-14
+      ],
+      [
+        25.885098654500275,
+        -5.830776982746225,
+        587.5762553978731,
+        4705.657279075835,
+        -0.3058718011079721,
+        20.628532176432106,
+        -0.0005286150003812714,
+        0.7986501684582068,
+        -0.6017088231448549,
+        -0.008900050035154096,
+        9.541853763805456e-05,
+        -0.38206022255065925,
+        -0.00558122625999234,
+        -3.724930218651256e-14
+      ],
+      [
+        25.88571428571429,
+        -5.830965286476265,
+        587.5889549534448,
+        4705.6572769130025,
+        -0.30586984905261244,
+        20.628466276345602,
+        -0.006435598592985601,
+        0.7985793766553566,
+        -0.6018027463453666,
+        -0.008901433313772631,
+        9.54055761428234e-05,
+        -0.3821414814467269,
+        -0.005582389397705029,
+        -3.7302945132445886e-14
+      ],
+      [
+        25.891725275535915,
+        -5.832803752432913,
+        587.7129486020543,
+        4705.65689156557,
+        -0.3058507853532215,
+        20.62782542606236,
+        -0.06410716970763494,
+        0.7978855478334909,
+        -0.6027210408851712,
+        -0.008914957038788179,
+        9.52782025867509e-05,
+        -0.38293595217170806,
+        -0.005593760809074852,
+        -3.725970890427402e-14
+      ],
+      [
+        25.89773626535754,
+        -5.834642103735651,
+        587.8369384107069,
+        4705.656159576081,
+        -0.30583171130478626,
+        20.627186603299208,
+        -0.12177521878850867,
+        0.7971892167683641,
+        -0.6036404404277035,
+        -0.008928496422721088,
+        9.51500124948594e-05,
+        -0.38373163702230423,
+        -0.005605149052252946,
+        -3.7215945181923375e-14
+      ],
+      [
+        25.90975824500079,
+        -5.838318576912851,
+        588.0849103727298,
+        4705.654002355262,
+        -0.3057935429950792,
+        20.625913044226568,
+        -0.23710426633376644,
+        0.7957915300083984,
+        -0.6054814394857426,
+        -0.008955606357429202,
+        9.489199078692861e-05,
+        -0.3853254415634535,
+        -0.005627959289669288,
+        -3.7129100828654766e-14
+      ],
+      [
+        25.921780224644042,
+        -5.841994590994775,
+        588.3328670735933,
+        4705.650458735527,
+        -0.3057553351451037,
+        20.624647715624143,
+        -0.35241922985986435,
+        0.7943837623513131,
+        -0.6073268250126973,
+        -0.008982778419331094,
+        9.463067269788605e-05,
+        -0.3869241007016777,
+        -0.005650836794716559,
+        -3.704304105888737e-14
+      ],
+      [
+        25.933802204287293,
+        -5.845670145515715,
+        588.5808086128703,
+        4705.645528886092,
+        -0.30571708953305876,
+        20.62339073312467,
+        -0.4677201451664619,
+        0.7929658504980278,
+        -0.609176569654154,
+        -0.009010012189509446,
+        9.436603148832864e-05,
+        -0.3885275834617168,
+        -0.005673781086573855,
+        -3.695660200573454e-14
+      ],
+      [
+        26.05402200071982,
+        -5.8824003371019655,
+        591.0594129828703,
+        4705.520023531118,
+        -0.30533295233650387,
+        20.611305733740494,
+        -1.6199673707650846,
+        0.7782151220371978,
+        -0.6279071104741305,
+        -0.009285642290607311,
+        9.153094203842714e-05,
+        -0.40481927227333603,
+        -0.0059067678762837065,
+        -3.6139961342030984e-14
+      ],
+      [
+        26.174241797152344,
+        -5.919084225786301,
+        593.536622051664,
+        4705.256077109987,
+        -0.3049470918606254,
+        20.600189212513076,
+        -2.7708730414061127,
+        0.7623797282361652,
+        -0.6470374989504424,
+        -0.009566893908605888,
+        8.833288249878949e-05,
+        -0.42154519966212395,
+        -0.00614569887950091,
+        -3.531324886758844e-14
+      ],
+      [
+        26.29446159358487,
+        -5.9557217190786975,
+        596.012559210361,
+        4704.85384500119,
+        -0.30456142776184886,
+        20.590166816394913,
+        -3.9205303127706843,
+        0.7453966039642937,
+        -0.6665270378285403,
+        -0.009853150824754336,
+        8.474285171575841e-05,
+        -0.4386408665705353,
+        -0.006389603862559271,
+        -3.4502273312505454e-14
+      ],
+      [
+        26.414681390017396,
+        -5.992312955065177,
+        598.4873635114812,
+        4704.313469362034,
+        -0.30417786336892577,
+        20.581363614419036,
+        -5.069078975109084,
+        0.7272042252385439,
+        -0.6863251424296858,
+        -0.010143650923715643,
+        8.073056655459464e-05,
+        -0.45601439300908214,
+        -0.006637113904357315,
+        -3.3698593263152896e-14
+      ],
+      [
+        26.59056092778596,
+        -6.045762747350429,
+        602.106240498715,
+        4703.274271138544,
+        -0.30362401687358603,
+        20.570913595623537,
+        -6.747805514762762,
+        0.6982919709016542,
+        -0.7157151412564904,
+        -0.010574339417918436,
+        7.403538921964742e-05,
+        -0.48166540019024684,
+        -0.00700176625261505,
+        -3.254362429959945e-14
+      ],
+      [
+        26.76644046555452,
+        -6.099116134600042,
+        605.7235494327441,
+        4701.93992980828,
+        -0.30308212719718597,
+        20.563567901433487,
+        -8.425444720753406,
+        0.6665165575810136,
+        -0.7453905720908044,
+        -0.01100850039161356,
+        6.62724763616479e-05,
+        -0.507090132463024,
+        -0.007362035917712954,
+        -3.138613494461742e-14
+      ],
+      [
+        26.942320003323083,
+        -6.1523753262222085,
+        609.3398436856418,
+        4700.310537448278,
+        -0.30255256946139975,
+        20.559355655775146,
+        -10.103171273251455,
+        0.6317783791742634,
+        -0.7750475965719084,
+        -0.011441615884638153,
+        5.734855413216378e-05,
+        -0.5315216215905257,
+        -0.00770669904909628,
+        -3.024330931788465e-14
+      ],
+      [
+        27.118199541091645,
+        -6.205542123666379,
+        612.9556505661816,
+        4698.3859535870415,
+        -0.3020301430465303,
+        20.55793887867799,
+        -11.782460622642775,
+        0.5940593656272304,
+        -0.804318085190293,
+        -0.011868233629039479,
+        4.718163699928349e-05,
+        -0.5539395672351317,
+        -0.008020883472081616,
+        -2.9105082612444126e-14
+      ],
+      [
+        27.294079078860207,
+        -6.258616757454989,
+        616.5713945654957,
+        4696.165756052381,
+        -0.30150168668292016,
+        20.558452975345663,
+        -13.465022219654482,
+        0.5534575598726501,
+        -0.8327728818808988,
+        -0.012282021836126044,
+        3.5709781390335296e-05,
+        -0.5730419358040247,
+        -0.00828567388768474,
+        -2.7969876800232575e-14
+      ],
+      [
+        27.38571428571429,
+        -6.286231949029696,
+        618.4552984530131,
+        4694.891645212561,
+        -0.30121669934802714,
+        20.559006593833967,
+        -14.343556131846036,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        27.397496400123647,
+        -6.289756422640494,
+        618.6958868800187,
+        4694.722457726462,
+        -0.2991373376153858,
+        20.419781944461953,
+        -14.359680165090376,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        27.409278514533003,
+        -6.293256661455623,
+        618.9348527005329,
+        4694.5530768395365,
+        -0.2970804304044865,
+        20.282064630718835,
+        -14.376095119185768,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        27.43284274335172,
+        -6.300209184331925,
+        619.4095736881197,
+        4694.2139216836995,
+        -0.29301058162515037,
+        20.00958129655123,
+        -14.409491126906538,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        27.456406972170438,
+        -6.307066818505149,
+        619.877941891841,
+        4693.873966691311,
+        -0.2890270979509591,
+        19.742895338663857,
+        -14.44398898579324,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        27.479971200989155,
+        -6.313831566447159,
+        620.3400917286075,
+        4693.533186502943,
+        -0.2851269240223266,
+        19.481801504373287,
+        -14.479529384843987,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        27.597382226258187,
+        -6.346214002333019,
+        622.554200437695,
+        4691.822188120813,
+        -0.2668457981677214,
+        18.258189264501482,
+        -14.670379358433822,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        27.71479325152722,
+        -6.376553874496764,
+        624.6316126575396,
+        4690.087624249792,
+        -0.25024825887898317,
+        17.14756218396671,
+        -14.879485491282368,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        27.83220427679625,
+        -6.405031851628667,
+        626.584451606162,
+        4688.327679980926,
+        -0.23508631612241404,
+        16.133253907127635,
+        -15.101786900877286,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        27.949615302065283,
+        -6.431803948798892,
+        628.423183278752,
+        4686.541071422372,
+        -0.22115829431153347,
+        15.201707316421219,
+        -15.333049168212774,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        28.127223521019754,
+        -6.469357620364959,
+        631.0077248062953,
+        4683.7859799869475,
+        -0.20207375903023594,
+        13.925593360684244,
+        -15.69211805936363,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        28.304831739974226,
+        -6.503705890222468,
+        633.3779589649965,
+        4680.966749935096,
+        -0.1850009083214687,
+        12.784263493542928,
+        -16.053900454723568,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        28.482439958928698,
+        -6.535173754851626,
+        635.5556520192707,
+        4678.083633463955,
+        -0.16960829846757722,
+        11.755419873318193,
+        -16.410928847373675,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        28.66004817788317,
+        -6.564037791592078,
+        637.5593123355798,
+        4675.137951750278,
+        -0.15563957391725494,
+        10.82181488346132,
+        -16.757466407933126,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        28.83765639683764,
+        -6.59053249289164,
+        639.4046171193468,
+        4672.131967485177,
+        -0.14289926922945595,
+        9.970298417522212,
+        -17.08937427824585,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        29.142165265211645,
+        -6.631019111569534,
+        642.2382931554318,
+        4666.846407376995,
+        -0.1234890536702244,
+        8.672781070578594,
+        -17.616482223639878,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        29.44667413358565,
+        -6.6660001652050305,
+        644.7038713381199,
+        4661.409343486909,
+        -0.10667936653858281,
+        7.548652254351605,
+        -18.08419825538289,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        29.751183001959653,
+        -6.696206969235656,
+        646.8500883988144,
+        4655.839154581811,
+        -0.09204817540749577,
+        6.56961535557468,
+        -18.490078074421803,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        30.055691870333657,
+        -6.722250348898378,
+        648.7176102225495,
+        4650.154565578518,
+        -0.07928949131655283,
+        5.715210946606858,
+        -18.836147972078827,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        30.36020073870766,
+        -6.744660999655335,
+        650.3417538456297,
+        4644.373215826223,
+        -0.06815722220328618,
+        4.969031669445837,
+        -19.126812768485326,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        30.664709607081665,
+        -6.763903364928636,
+        651.7534252031835,
+        4638.511059664176,
+        -0.0584460119347862,
+        4.317421469145711,
+        -19.36769642681984,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        31.156066194366023,
+        -6.789282110585217,
+        653.6505021001507,
+        4628.916901743775,
+        -0.04533852311883483,
+        3.4365999762584383,
+        -19.667305069323632,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        31.64742278165038,
+        -6.808891074401947,
+        655.1594697390121,
+        4619.19817888657,
+        -0.03486405051058308,
+        2.7312546186135163,
+        -19.878992712042876,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        32.138779368934735,
+        -6.823894385346427,
+        656.3579627231218,
+        4609.392447828026,
+        -0.026518145243231966,
+        2.167979097777869,
+        -20.02504583669418,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        32.63013595621909,
+        -6.835232372269617,
+        657.3087955117518,
+        4599.527329335034,
+        -0.019884391661149543,
+        1.719181225940428,
+        -20.123308695224864,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        33.12149254350345,
+        -6.843660404715999,
+        658.0625211070287,
+        4589.622719901128,
+        -0.014621755775522534,
+        1.362238813558943,
+        -20.18747120074954,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        33.61284913078781,
+        -6.8497815365599575,
+        658.6595803745704,
+        4579.692779784677,
+        -0.010453582954274591,
+        1.0787728883800165,
+        -20.227764359426743,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        34.104205718072166,
+        -6.854076636120374,
+        659.1322905263099,
+        4569.747345320091,
+        -0.007156353514650594,
+        0.8539076996724692,
+        -20.251541631214412,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        34.59556230535652,
+        -6.856927986140038,
+        659.5064015010519,
+        4559.7931732564175,
+        -0.004550597870514393,
+        0.6756755629507947,
+        -20.26399162129081,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        35.20520071519727,
+        -6.858905150246903,
+        659.8636508087917,
+        4547.437386903028,
+        -0.0020676136849682677,
+        0.5052492047335583,
+        -20.26900299155999,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        35.81483912503802,
+        -6.859570167952444,
+        660.1306621203731,
+        4535.080973838901,
+        -0.00021725812128509944,
+        0.37771841792965183,
+        -20.266757374734436,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        36.42447753487877,
+        -6.8592601203511725,
+        660.330322134186,
+        4522.727498935303,
+        0.0011615277296406225,
+        0.28226439027130323,
+        -20.260159119540234,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        37.03411594471952,
+        -6.85822281580076,
+        660.4795163120838,
+        4510.378934850787,
+        0.0021875937658677415,
+        0.21087662667142681,
+        -20.250832024298152,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        37.61030939313683,
+        -6.856742674461675,
+        660.585669328914,
+        4498.713487767783,
+        0.002914254066344449,
+        0.160045450493778,
+        -20.240485261391747,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        38.186502841554145,
+        -6.854897501479535,
+        660.6662171798746,
+        4487.054263330405,
+        0.003462724594418533,
+        0.121448975987386,
+        -20.22926721389639,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        38.76269628997146,
+        -6.852777097861478,
+        660.7273344399581,
+        4475.4016654,
+        0.003876296399582701,
+        0.092144019949486,
+        -20.21753249035458,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        39.33888973838877,
+        -6.850449311524679,
+        660.7737013264656,
+        4463.755921979421,
+        0.004187712984513707,
+        0.06989751605649601,
+        -20.205485573071513,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        40.470199282925094,
+        -6.845458168151627,
+        660.834469169455,
+        4440.910878449113,
+        0.004590197373502255,
+        0.04071403308615957,
+        -20.18139501272053,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        41.601508827461416,
+        -6.8401271259588645,
+        660.8702466291121,
+        4418.093356428996,
+        0.004821025470400302,
+        0.023511389621012527,
+        -20.157169643236777,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        42.73281837199774,
+        -6.834599722597719,
+        660.8910998563397,
+        4395.3033279992305,
+        0.004949712295840395,
+        0.013472546575669164,
+        -20.13284611394428,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        43.86412791653406,
+        -6.828960191244982,
+        660.9029708909598,
+        4372.5406891153825,
+        0.005017114000728396,
+        0.007750688734520065,
+        -20.108397738976368,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        45.065546566682556,
+        -6.8229122304090515,
+        660.9102436830808,
+        4348.397527586524,
+        0.005052611581754331,
+        0.00424139923645676,
+        -20.08251342546404,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        46.26696521683105,
+        -6.816832496306191,
+        660.9140865678291,
+        4324.285400786777,
+        0.00506504137705198,
+        0.0023845824285379075,
+        -20.05680817216649,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        47.46838386697955,
+        -6.810744064370763,
+        660.9161544297834,
+        4300.2041694929285,
+        0.005065672232818734,
+        0.0013839256566330201,
+        -20.03124129792623,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        48.0644116487991,
+        -6.807724769018069,
+        660.9168399514496,
+        4288.268790364366,
+        0.005063773510900358,
+        0.0010517585542538367,
+        -20.018571041006954,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        48.66043943061865,
+        -6.804707430789691,
+        660.9173863806537,
+        4276.340942703019,
+        0.005060981949174537,
+        0.0007867792937687681,
+        -20.005899139421825,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        49.2564672124382,
+        -6.8016920429668835,
+        660.9177960174272,
+        4264.4206383529345,
+        0.0050572974506306895,
+        0.0005879522920799483,
+        -19.993248400013947,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        49.85016027085198,
+        -6.7986908386214555,
+        660.9181003966903,
+        4252.554518486805,
+        0.005052955102962782,
+        0.0004400629718443021,
+        -19.980671709356276,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        50.44385332926576,
+        -6.795692360114632,
+        660.9183281291138,
+        4240.695859881674,
+        0.005048121160897318,
+        0.00032928640357248373,
+        -19.96811609930125,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        51.037546387679534,
+        -6.7926968618551875,
+        660.9184985208509,
+        4228.844649436408,
+        0.00504292405259606,
+        0.00024629166453922653,
+        -19.955580029009948,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        52.22602215013901,
+        -6.786710028685922,
+        660.9187223536399,
+        4205.142803880581,
+        0.0050317929015836205,
+        0.00013701909520241534,
+        -19.930543332584957,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        53.414497912598485,
+        -6.780736745753457,
+        660.9188427223835,
+        4181.470667562011,
+        0.005020041110116522,
+        7.796556091750392e-05,
+        -19.905584563113287,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        54.60297367505796,
+        -6.77477762272854,
+        660.9189097914959,
+        4157.828148602217,
+        0.005007999425799112,
+        4.481163795141404e-05,
+        -19.88070317455837,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        55.78628196962012,
+        -6.768858743718619,
+        660.9189484585852,
+        4134.317760384688,
+        0.00499588399830096,
+        2.547730163042188e-05,
+        -19.85600603327711,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        56.96959026418228,
+        -6.7629542539151375,
+        660.9189705902472,
+        4110.836551767873,
+        0.004983716201023992,
+        1.419814720998825e-05,
+        -19.831384193426445,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        58.15289855874444,
+        -6.757064176202733,
+        660.9189828049762,
+        4087.3844336918037,
+        0.004971537974658788,
+        7.756906935780902e-06,
+        -19.80683740769195,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        59.80914674127502,
+        -6.748844150126162,
+        660.9189906631518,
+        4054.6077436295022,
+        0.004954521898106696,
+        3.2566083622985164e-06,
+        -19.772605640966358,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        61.465394923805604,
+        -6.7406522468804635,
+        660.918992986503,
+        4021.8876298514524,
+        0.004937573198991965,
+        1.4666697715992271e-06,
+        -19.73852004330144,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        63.12164310633619,
+        -6.732488346841922,
+        660.9189935803338,
+        3989.2238519333164,
+        0.004920715423125929,
+        5.266377862219347e-07,
+        -19.704579517801537,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        67.96806599954927,
+        -6.708758663195445,
+        660.9189913261808,
+        3893.965871980117,
+        0.004871946597266832,
+        -2.42509676625303e-07,
+        -19.606139831187804,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        69.17967172285253,
+        -6.702863098214274,
+        660.9189904249225,
+        3870.22583739021,
+        0.0048598826719034125,
+        -2.650194206575681e-07,
+        -19.581708358167173,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        71.60288316945908,
+        -6.691115564973837,
+        660.9189888592335,
+        3822.834183238295,
+        0.004835909208667099,
+        -4.226949175155577e-07,
+        -19.53303318801019,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        74.02609461606562,
+        -6.679425829824041,
+        660.9189873595119,
+        3775.5599921940798,
+        0.004812141392286011,
+        -6.052867827655224e-07,
+        -19.484663443830463,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        76.44930606267216,
+        -6.667793426347706,
+        660.9189857141994,
+        3728.402595099971,
+        0.004788578254634912,
+        -7.090210788761772e-07,
+        -19.43660351432102,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        82.05653011294073,
+        -6.6410925775588305,
+        660.9189816125194,
+        3619.724475186482,
+        0.00473482292984241,
+        -7.774950625853513e-07,
+        -19.32652277106003,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        87.6637541632093,
+        -6.61468983058704,
+        660.9189774040074,
+        3511.6587632828,
+        0.004682120034420661,
+        -7.600780572357342e-07,
+        -19.217977903632384,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        93.27097821347787,
+        -6.588579635471158,
+        660.9189732520457,
+        3404.197343817671,
+        0.004630440830465112,
+        -7.354238735022255e-07,
+        -19.11093123534448,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        102.7701466845776,
+        -6.54500089721736,
+        660.9189663736888,
+        3223.5070767577654,
+        0.004545154125078223,
+        -6.969811184713197e-07,
+        -18.93292118401117,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        112.26931515567732,
+        -6.502221121017789,
+        660.9189597263911,
+        3044.49104972919,
+        0.004462595016755831,
+        -6.814827501790582e-07,
+        -18.758971514399157,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        121.76848362677704,
+        -6.4602130248079055,
+        660.9189532767999,
+        2867.1085873960424,
+        0.004382631002199049,
+        -6.697276216887739e-07,
+        -18.588915331690316,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        131.26765209787678,
+        -6.418952253618035,
+        660.9189469880704,
+        2691.323049747563,
+        0.004305137563093903,
+        -6.548552367604817e-07,
+        -18.422590269399162,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        142.3439771582361,
+        -6.37175457671767,
+        660.9189398547356,
+        2488.322642284673,
+        0.004217743760958689,
+        -6.364521130674145e-07,
+        -18.233164414704405,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        153.42030221859542,
+        -6.325507889850924,
+        660.9189329291934,
+        2287.394294198469,
+        0.0041333805511743725,
+        -6.158042493855791e-07,
+        -18.048392002400718,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        158.24761904761905,
+        -6.305641730696462,
+        660.9189299757319,
+        2200.460505726476,
+        0.004097530612255027,
+        -6.074099671442403e-07,
+        -17.969292499914086,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        158.36654057116988,
+        -6.305154550365162,
+        660.9189299035198,
+        2198.323800691626,
+        0.0040966539500806405,
+        -6.072248087911261e-07,
+        -17.967353283257594,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        158.4854620947207,
+        -6.3046674742461235,
+        660.9189298313298,
+        2196.187326191895,
+        0.004095777638912433,
+        -6.070391756067868e-07,
+        -17.965414736420676,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.74761904761905,
+        -6.2995038169533135,
+        660.9189290664045,
+        2173.525116257285,
+        0.004086496793313394,
+        -6.050494788279655e-07,
+        -17.94487647427993,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.74948515317416,
+        -6.299496236952067,
+        660.9189290652822,
+        2173.4918400555707,
+        0.004061931363541789,
+        -6.014115491649796e-07,
+        -17.831873973940564,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.75135125872927,
+        -6.299488702189444,
+        660.9189290641666,
+        2173.4587718072075,
+        0.004037689221195405,
+        -5.978216636625741e-07,
+        -17.72043749074034,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.75508346983946,
+        -6.299473721970823,
+        660.9189290619486,
+        2173.3930455470286,
+        0.003989836669947644,
+        -5.907357713288567e-07,
+        -17.500625084007403,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.75881568094965,
+        -6.299458918045541,
+        660.9189290597567,
+        2173.328128519995,
+        0.003943222766033326,
+        -5.838339374727098e-07,
+        -17.286813302732263,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.76254789205984,
+        -6.299444285872081,
+        660.9189290575903,
+        2173.26399872446,
+        0.003897799210260082,
+        -5.771089641375563e-07,
+        -17.078767672729825,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.78008817979105,
+        -6.299377701192161,
+        660.9189290477317,
+        2172.9725792115305,
+        0.0036990500848093,
+        -5.476913245540191e-07,
+        -16.172345736639954,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.79762846752226,
+        -6.299314406942119,
+        660.91892903836,
+        2172.696111069855,
+        0.0035214749703665715,
+        -5.214174054175182e-07,
+        -15.368436180341613,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.81516875525347,
+        -6.299254065086758,
+        660.9189290294252,
+        2172.4329581243123,
+        0.003361836271630893,
+        -4.97804745070777e-07,
+        -14.651319688458862,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.83270904298467,
+        -6.299196385512081,
+        660.918929020884,
+        2172.1817170381155,
+        0.00321750276657205,
+        -4.7646126094025277e-07,
+        -14.008219409405468,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.85917311481012,
+        -6.299113853619675,
+        660.9189290086617,
+        2171.8225599512857,
+        0.0030240153079707953,
+        -4.4785495041172724e-07,
+        -13.155241132326925,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.88563718663556,
+        -6.299036110289748,
+        660.9189289971474,
+        2171.484373891779,
+        0.0028547991383883245,
+        -4.2283935133333083e-07,
+        -12.419410566313982,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.912101258461,
+        -6.298962576427017,
+        660.9189289862554,
+        2171.164366094841,
+        0.002705484799456799,
+        -4.0076352667153865e-07,
+        -11.779491903544407,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.93856533028645,
+        -6.298892768816766,
+        660.9189289759144,
+        2170.860209284934,
+        0.002572646307051642,
+        -3.8111714605034307e-07,
+        -11.218823213705226,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        159.9650294021119,
+        -6.2988262885854365,
+        660.9189289660656,
+        2170.5699869768687,
+        0.002453629302823131,
+        -3.635049465264891e-07,
+        -10.724493714199935,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.01112136384918,
+        -6.298717470960222,
+        660.9189289499441,
+        2170.0931120116625,
+        0.002273280516119931,
+        -3.3678494003245677e-07,
+        -9.99242850981648,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.05721332558647,
+        -6.298616314779285,
+        660.9189289349588,
+        2169.646875666546,
+        0.0021202983078010443,
+        -3.140686425629693e-07,
+        -9.390696850324488,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.10330528732376,
+        -6.298521692361861,
+        660.9189289209452,
+        2169.2259215681215,
+        0.0019886117107215866,
+        -2.944534779504282e-07,
+        -8.889684616697702,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.14939724906105,
+        -6.298432733191982,
+        660.9189289077767,
+        2168.82615034572,
+        0.0018739634334206535,
+        -2.773075325542662e-07,
+        -8.46861713093737,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.19548921079834,
+        -6.298348730427966,
+        660.9189288953512,
+        2168.4442621346316,
+        0.0017731493994935358,
+        -2.6215599137564945e-07,
+        -8.111832209838035,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.24158117253563,
+        -6.298269102939171,
+        660.9189288835851,
+        2168.07756903124,
+        0.001683725111836156,
+        -2.4863730889265865e-07,
+        -7.807352086266469,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.3166327641328,
+        -6.298147600481453,
+        660.9189288656648,
+        2167.5075001879877,
+        0.001557806201047097,
+        -2.2942897441890792e-07,
+        -7.400541534972584,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.39168435572998,
+        -6.298034791094097,
+        660.9189288490792,
+        2166.964602699329,
+        0.0014512236466457033,
+        -2.129526791633216e-07,
+        -7.079143355920341,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.46673594732715,
+        -6.297929389294856,
+        660.9189288336471,
+        2166.4432780740376,
+        0.0013597847684265725,
+        -1.9859758676601575e-07,
+        -6.822573934400926,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.54178753892432,
+        -6.297830379478274,
+        660.9189288192268,
+        2165.9392561949926,
+        0.0012804807202820058,
+        -1.8592972258555475e-07,
+        -6.616096842218775,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.6168391305215,
+        -6.297736937761084,
+        660.9189288057042,
+        2165.4492011470165,
+        0.001211080845095705,
+        -1.7463103607829273e-07,
+        -6.4488152325225885,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.69189072211867,
+        -6.297648387031834,
+        660.9189287929859,
+        2164.9704925000765,
+        0.001149900060508081,
+        -1.6446465008325422e-07,
+        -6.312559692944118,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.81292628958846,
+        -6.297514484353676,
+        660.9189287739763,
+        2164.2172615551117,
+        0.001065364375379132,
+        -1.5001521276843375e-07,
+        -6.142937106374545,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        160.93396185705825,
+        -6.297389926433337,
+        660.918928756593,
+        2163.481606784674,
+        0.0009948303730086222,
+        -1.3750291439907967e-07,
+        -6.019059025970909,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        161.05499742452804,
+        -6.297273208450978,
+        660.9189287406268,
+        2162.7588629066704,
+        0.0009354600989413456,
+        -1.2655541941102504e-07,
+        -5.928117551893104,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        161.17603299199783,
+        -6.2971631121524325,
+        660.9189287259053,
+        2162.045620059726,
+        0.000885142476750141,
+        -1.1690296312097463e-07,
+        -5.861026338430514,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        161.29706855946762,
+        -6.297058640483711,
+        660.9189287122839,
+        2161.339385220937,
+        0.0008422749622494506,
+        -1.0834546734384561e-07,
+        -5.811307154820621,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        161.46985652170034,
+        -6.2969176414012145,
+        660.9189286945045,
+        2160.339840490467,
+        0.0007915746349388847,
+        -9.773041414838868e-08,
+        -5.761556733432363,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        161.64264448393305,
+        -6.2967845149258395,
+        660.9189286784185,
+        2159.347346926159,
+        0.0007508173921226658,
+        -8.870654088061078e-08,
+        -5.728937921264169,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        161.81543244616577,
+        -6.296657725687211,
+        660.9189286637733,
+        2158.359463056886,
+        0.0007179255543784383,
+        -8.10166215296532e-08,
+        -5.707408989779286,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        161.9882204083985,
+        -6.296536055890932,
+        660.9189286503561,
+        2157.374613140996,
+        0.0006913146368467289,
+        -7.445846149696614e-08,
+        -5.693110500029178,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        162.1610083706312,
+        -6.296418532607386,
+        660.9189286379865,
+        2156.3917942762273,
+        0.000669752062182721,
+        -6.886734185183501e-08,
+        -5.683601348981458,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        162.38610275126362,
+        -6.296270384211713,
+        660.9189286231921,
+        2155.113422708102,
+        0.0006476563361233838,
+        -6.280886951001363e-08,
+        -5.6757802714793595,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        162.61119713189603,
+        -6.296126592987648,
+        660.9189286096279,
+        2153.836421997046,
+        0.0006308132696534257,
+        -5.790271540782837e-08,
+        -5.671063660736063,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        162.83629151252845,
+        -6.295986117807475,
+        660.9189285970579,
+        2152.5602390172376,
+        0.0006179540492591113,
+        -5.393808165501487e-08,
+        -5.668117568868735,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        163.06138589316086,
+        -6.2958481781330144,
+        660.9189285852906,
+        2151.2845895467103,
+        0.0006081338742802122,
+        -5.074225247951759e-08,
+        -5.666257798062091,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        163.3001953672972,
+        -6.295703899797381,
+        660.918928573498,
+        2149.9315851325296,
+        0.0006001857532435597,
+        -4.8021906735385066e-08,
+        -5.6649615055649045,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        163.53900484143352,
+        -6.2955612893202275,
+        660.918928562288,
+        2148.578850596283,
+        0.0005942277641544185,
+        -4.5870992197631625e-08,
+        -5.664092757522841,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        163.77781431556986,
+        -6.295419926427563,
+        660.9189285515378,
+        2147.226299188476,
+        0.0005897540130339292,
+        -4.4174195598124026e-08,
+        -5.663443027314144,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        164.01699558831393,
+        -6.295279279125091,
+        660.9189285411335,
+        2145.8717797216486,
+        0.0005863823327693104,
+        -4.283645525640766e-08,
+        -5.6629016347322265,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        164.256176861058,
+        -6.295139336805075,
+        660.9189285310146,
+        2144.5173790336585,
+        0.0005838423206540165,
+        -4.178572470682975e-08,
+        -5.662423960064971,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        164.49535813380209,
+        -6.2949999260705605,
+        660.9189285211196,
+        2143.1630868914635,
+        0.0005819255410263645,
+        -4.096185507613983e-08,
+        -5.661985444315151,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        164.73455176863084,
+        -6.294860909726623,
+        660.9189285113997,
+        2141.8088265119814,
+        0.0005804756476220291,
+        -4.0316802317719636e-08,
+        -5.661569772856986,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        165.96552936083825,
+        -6.2941483409411,
+        660.9189284627004,
+        2134.840805196864,
+        0.0005762034241894103,
+        -3.835613299654852e-08,
+        -5.659521947980001,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        167.19650695304566,
+        -6.293438808354536,
+        660.9189284154116,
+        2127.8752550093586,
+        0.0005751643990653049,
+        -3.7842508609392976e-08,
+        -5.6575478447267304,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        168.42748454525307,
+        -6.292730386304092,
+        660.9189283686117,
+        2120.912145053622,
+        0.0005750444093087864,
+        -3.7820178496988556e-08,
+        -5.655578041325997,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        172.0340398974043,
+        -6.290656530627334,
+        660.9189282316505,
+        2100.5254158937596,
+        0.0005743529164500212,
+        -3.7762628708542226e-08,
+        -5.649789742146782,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        175.64059524955556,
+        -6.2885857130932,
+        660.9189280950474,
+        2080.159546592388,
+        0.0005737603504593264,
+        -3.78267199578465e-08,
+        -5.644011358368666,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        179.2471506017068,
+        -6.286517708546736,
+        660.9189279586136,
+        2059.8144881740564,
+        0.0005730115999451368,
+        -3.780590247382127e-08,
+        -5.638247854613442,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        196.48491242496618,
+        -6.276673463420244,
+        660.918927309722,
+        1962.8586794691416,
+        0.0005691912856335949,
+        -3.750634827952519e-08,
+        -5.6109067455400155,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        213.72267424822556,
+        -6.266894941512186,
+        660.9189266663082,
+        1866.3707569638957,
+        0.0005653669193690537,
+        -3.716694067693057e-08,
+        -5.5839023878107845,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        230.96043607148493,
+        -6.257181224906003,
+        660.9189260283603,
+        1770.3452899827155,
+        0.0005616340482313746,
+        -3.6850197301588604e-08,
+        -5.5572318611508855,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        256.216460721343,
+        -6.243064202577189,
+        660.9189251032958,
+        1630.478484314538,
+        0.0005562704647535558,
+        -3.639225348528368e-08,
+        -5.518751644823917,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        281.4724853712011,
+        -6.229080770348534,
+        660.9189241893736,
+        1491.5760759628752,
+        0.0005510546705853037,
+        -3.595569418060096e-08,
+        -5.480965349076492,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ],
+      [
+        298.21839993404154,
+        -6.2198810357024445,
+        660.9189235893701,
+        1400.0001064322742,
+        0.00054767316520779,
+        -3.5679864757815876e-08,
+        -5.456266185597538,
+        0.531237427621501,
+        -0.847117105413485,
+        -0.01249020576465177,
+        2.920356593123529e-05,
+        -0.581162196091443,
+        -0.008396547683864969,
+        -2.7379161800057787e-14
+      ]
+    ],
+    "out_of_rail_time": 0.36324670161934375,
+    "out_of_rail_time_index": 49,
+    "apogee_time": 25.885098654500275,
+    "apogee": 4705.657279075835,
+    "parachute_events": [
+      [
+        25.88571428571429,
+        {
+          "name": "calisto_drogue_chute",
+          "parachute_type": "hemispherical",
+          "cd_s": 1.0,
+          "trigger": "664351444b3052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32307340707631347b72293038305a29302174475e357c3b7063302551526830303031463026343b5130383b3e7a50443d2423304564282a697e283f7a697e287172697e29492b686d3f2430464b424f5657694d3d5361242436336231795f3f6238423e4f6134254143567b32747d503c62793e5a29306d5e62576e4c4f62592a6a4e62312143546379783767577067695a5652422828586d7861446231216756612423643d62232148345740266849622369354d455e7639326a314658535a2962493755767a5335584a3d287b6c23446f495651677530625a3d697c61264b704b576e585925612423643d62232148346261483844584a76394f4a5a78606356516830674540583056584c56263f6261483844584a7641664f41746433664240685235526567786264585f2a6321263e5f4c6a615531445268296c6c77292a6462393865715740266849622369354d455e754c5456506a7d4062592a6963614139266056607a3142576e583423637978376757706648265575303d78625945577a58626e7a4962642a772a6555794561443278775a5574772d3b5a2a2a6146583e563f4755746734636c23433274557659497c593b49767e576e572a4558627946546c77764c",
+          "sampling_rate": 105,
+          "lag": 1.5,
+          "noise": [
+            0,
+            8.3,
+            0.5
+          ],
+          "radius": 0.4768272270088961,
+          "drag_coefficient": 1.4,
+          "height": 0.4768272270088961,
+          "porosity": 0.0432,
+          "signature": {
+            "module": "rocketpy.rocket.parachutes.hemispherical_parachute",
+            "name": "HemisphericalParachute",
+            "hash": 8532846519634
+          }
+        }
+      ],
+      [
+        158.24761904761905,
+        {
+          "name": "calisto_main_chute",
+          "parachute_type": "hemispherical",
+          "cd_s": 10.0,
+          "trigger": "66435144673052523931303030317433533f3c295925583739583e3471696a315855416125457733576e58343e5a657728355a2a472a366c716848626a307c36366125457733576e576026574d21302d6c71663f32307340707631347b72293038305a29302174475e4165523771302551526830303031463026343b513043296a25317078716a30627e50663073734a303046293f424f39657b2b4f267c6b776c71726b3e61466d507a587131637264366238676a386076635a2a363553593b62613662592a69644c7d686270625a3e416b5167333578577071245e4648267a7e59686070246360744e6a62393865725740266849622369354d464b7d555556506a7d4062592a6964614139266056607a3142576e583423637978376757706766596436624c7b5a4444437b55767a5335584a3d287b6c234463455651677530625a3d6a365651467128614139266056607a3142576e586c31583d69363b61784f653c5a2930493e623351494056514671286261483844584a7641664f43647555664240685235526567786264585f2a632b7739656d5f6557656e4d63714642617d6b606c716f35366c7630237162592a6a4e6231723653637978376757706766595652422828586d7861446231726155612423643d62232148345740266849622369354d335356446a583d384c3e556b59647150454b4060516a7e705e6555764453345f7b776c5a663c584d5652554a345a6758453e6c7a6f2870337d305679627a7939375651706e21557a424a4c622576423b4526",
+          "sampling_rate": 105,
+          "lag": 1.5,
+          "noise": [
+            0,
+            8.3,
+            0.5
+          ],
+          "radius": 1.5078600877302688,
+          "drag_coefficient": 1.4,
+          "height": 1.5078600877302688,
+          "porosity": 0.0432,
+          "signature": {
+            "module": "rocketpy.rocket.parachutes.hemispherical_parachute",
+            "name": "HemisphericalParachute",
+            "hash": 8532846519577
+          }
+        }
+      ]
+    ],
+    "parachutes_info": {
+      "calisto_drogue_chute": {
+        "drag": [
+          239.11945868000905,
+          227.08264157552898,
+          237.12911960308705,
+          235.17972870501302,
+          231.3754612270763,
+          227.72788845239853,
+          224.22952877627858,
+          208.80863958005614,
+          196.2308763026852,
+          185.94910841183133,
+          177.54661175589996,
+          167.68187681005065,
+          160.48617115478632,
+          155.32953126376887,
+          151.72398487843478,
+          149.30357568019014,
+          147.13494278431244,
+          146.63517973972867,
+          147.11525068269495,
+          148.1259596046519,
+          149.38814975252092,
+          150.71480381891018,
+          152.73275413225215,
+          154.4324489767899,
+          155.77145844294944,
+          156.78340211200512,
+          157.52267698265536,
+          158.05068559643988,
+          158.4224869549299,
+          158.68058449068548,
+          158.89062540446304,
+          159.0183266921028,
+          159.09964842640986,
+          159.15096211334148,
+          159.17997717394607,
+          159.19738619463146,
+          159.20821614129738,
+          159.2149023073992,
+          159.21988449768722,
+          159.2219403718544,
+          159.2255293031332,
+          159.2271988176105,
+          159.22602522240553,
+          159.2247266263406,
+          159.22466993088563,
+          159.225795470768,
+          159.22596386776027,
+          159.2258319640796,
+          159.2258083886476,
+          159.22586223171493,
+          159.22592315182706,
+          159.22603987070033,
+          159.2261587243913,
+          159.22628749424584,
+          159.2264253675334,
+          159.22656710328675,
+          159.2267088497501,
+          159.22690820658045,
+          159.22711287064624,
+          159.2273281856996,
+          159.22763110751788,
+          159.22144461297648,
+          159.22849063995434,
+          159.22720847060825,
+          159.22753397744916,
+          159.22923441055158,
+          159.23019903706071,
+          159.23215837948453,
+          159.2323175188633,
+          159.23431640368597,
+          159.2364589085404,
+          159.23853976718374,
+          159.24132284569558,
+          159.24427412361118,
+          159.24760805347518,
+          159.24961533246923,
+          159.24952946553216,
+          159.24954309310536,
+          159.2495581283777,
+          159.24975595498609
+        ],
+        "t": [
+          27.38571428571429,
+          27.463767772703417,
+          27.397496400123647,
+          27.409278514533003,
+          27.43284274335172,
+          27.456406972170438,
+          27.479971200989155,
+          27.597382226258187,
+          27.71479325152722,
+          27.83220427679625,
+          27.949615302065283,
+          28.127223521019754,
+          28.304831739974226,
+          28.482439958928698,
+          28.66004817788317,
+          28.83765639683764,
+          29.142165265211645,
+          29.44667413358565,
+          29.751183001959653,
+          30.055691870333657,
+          30.36020073870766,
+          30.664709607081665,
+          31.156066194366023,
+          31.64742278165038,
+          32.138779368934735,
+          32.63013595621909,
+          33.12149254350345,
+          33.61284913078781,
+          34.104205718072166,
+          34.59556230535652,
+          35.20520071519727,
+          35.81483912503802,
+          36.42447753487877,
+          37.03411594471952,
+          37.61030939313683,
+          38.186502841554145,
+          38.76269628997146,
+          39.33888973838877,
+          40.470199282925094,
+          41.601508827461416,
+          42.73281837199774,
+          43.86412791653406,
+          45.065546566682556,
+          46.26696521683105,
+          47.46838386697955,
+          48.0644116487991,
+          48.66043943061865,
+          49.2564672124382,
+          49.85016027085198,
+          50.44385332926576,
+          51.037546387679534,
+          52.22602215013901,
+          53.414497912598485,
+          54.60297367505796,
+          55.78628196962012,
+          56.96959026418228,
+          58.15289855874444,
+          59.80914674127502,
+          61.465394923805604,
+          63.12164310633619,
+          67.96806599954927,
+          72.81448889276234,
+          69.17967172285253,
+          71.60288316945908,
+          74.02609461606562,
+          76.44930606267216,
+          82.05653011294073,
+          87.6637541632093,
+          93.27097821347787,
+          102.7701466845776,
+          112.26931515567732,
+          121.76848362677704,
+          131.26765209787678,
+          142.3439771582361,
+          153.42030221859542,
+          164.49662727895475,
+          158.24761904761905,
+          158.36654057116988,
+          158.4854620947207,
+          159.74761904761905
+        ]
+      },
+      "calisto_main_chute": {
+        "drag": [
+          1592.4981143210778,
+          1435.4794842357226,
+          1572.5140154613864,
+          1552.9263545431281,
+          1514.6449644690392,
+          1477.8706346867355,
+          1442.5219000961156,
+          1293.501805796686,
+          1168.15859555467,
+          1061.7043463626194,
+          970.567883217936,
+          856.0061039040104,
+          762.9185604337739,
+          686.3527607173768,
+          622.5976041343456,
+          568.957117663393,
+          493.9491848899724,
+          436.2874980532342,
+          391.0087506521037,
+          354.841325549996,
+          325.58276836769113,
+          301.6105477187819,
+          271.01524533176297,
+          248.00697907443842,
+          230.36505390977587,
+          216.64061371382314,
+          205.83336519655302,
+          197.2358888737918,
+          186.7953485981556,
+          179.34863207332234,
+          173.97470473223356,
+          170.07362570803073,
+          167.21445914513495,
+          164.37399899490745,
+          162.5302936577254,
+          161.3341152879248,
+          160.54502968668075,
+          160.02521959295015,
+          159.60659224371437,
+          159.3688861758312,
+          159.2247574776233,
+          159.1374549978063,
+          159.08303049098313,
+          159.05395714453428,
+          159.04032311182712,
+          159.03273661916384,
+          159.02801533564127,
+          159.0252258068914,
+          159.0236871493246,
+          159.0300758784546,
+          159.03223547116787,
+          159.02620811039503,
+          159.02587383257514,
+          159.02361056997196,
+          159.02509776950788,
+          159.02988207703217,
+          159.03449427478418,
+          159.03882966992393,
+          159.04548623033665,
+          159.05199874227588,
+          159.06022533139242
+        ],
+        "t": [
+          159.74761904761905,
+          159.76418854637663,
+          159.74948515317416,
+          159.75135125872927,
+          159.75508346983946,
+          159.75881568094965,
+          159.76254789205984,
+          159.78008817979105,
+          159.79762846752226,
+          159.81516875525347,
+          159.83270904298467,
+          159.85917311481012,
+          159.88563718663556,
+          159.912101258461,
+          159.93856533028645,
+          159.9650294021119,
+          160.01112136384918,
+          160.05721332558647,
+          160.10330528732376,
+          160.14939724906105,
+          160.19548921079834,
+          160.24158117253563,
+          160.3166327641328,
+          160.39168435572998,
+          160.46673594732715,
+          160.54178753892432,
+          160.6168391305215,
+          160.69189072211867,
+          160.81292628958846,
+          160.93396185705825,
+          161.05499742452804,
+          161.17603299199783,
+          161.29706855946762,
+          161.46985652170034,
+          161.64264448393305,
+          161.81543244616577,
+          161.9882204083985,
+          162.1610083706312,
+          162.38610275126362,
+          162.61119713189603,
+          162.83629151252845,
+          163.06138589316086,
+          163.3001953672972,
+          163.53900484143352,
+          163.77781431556986,
+          164.01699558831393,
+          164.256176861058,
+          164.49535813380209,
+          164.73455176863084,
+          165.96552936083825,
+          167.19650695304566,
+          168.42748454525307,
+          172.0340398974043,
+          175.64059524955556,
+          179.2471506017068,
+          196.48491242496618,
+          213.72267424822556,
+          230.96043607148493,
+          256.216460721343,
+          281.4724853712011,
+          306.7285100210592
+        ]
       }
     },
-    "out_of_rail_time_index": 49,
+    "impact_state": [
+      -6.2198810357024445,
+      660.9189235893701,
+      1400.0001064322742,
+      0.00054767316520779,
+      -3.5679864757815876e-08,
+      -5.456266185597538,
+      0.531237427621501,
+      -0.847117105413485,
+      -0.01249020576465177,
+      2.920356593123529e-05,
+      -0.581162196091443,
+      -0.008396547683864969,
+      -2.7379161800057787e-14
+    ],
+    "impact_velocity": -5.456266185597538,
+    "x_impact": -6.2198810357024445,
+    "y_impact": 660.9189235893701,
+    "t_final": 298.21839993404154,
     "function_evaluations": [
       0,
       8,
@@ -23412,109 +10337,156 @@
       462,
       463,
       464,
+      465,
       466,
-      467,
       484,
+      485,
       486,
-      487,
+      500,
       501,
       502,
-      503,
+      517,
       518,
+      519,
       520,
-      521,
-      522,
-      523,
-      524,
-      525,
-      540,
-      543,
-      559,
-      561,
-      562,
-      563,
-      564,
-      565,
-      566,
-      567,
-      568,
+      535,
+      537,
+      553,
+      554,
+      555,
       569,
-      584,
+      570,
+      571,
       586,
       587,
       588,
       589,
-      590,
       591,
       592,
       593,
       594,
       595,
+      596,
       597,
       598,
       599,
       600,
-      615,
-      617,
-      619,
+      601,
+      602,
+      603,
+      618,
       620,
       621,
       622,
       624,
-      626,
-      627,
-      628,
-      629,
+      642,
+      644,
+      645,
       646,
-      662,
-      663,
-      664,
-      665,
-      682,
+      647,
+      648,
+      649,
+      650,
+      651,
+      652,
+      653,
+      654,
+      655,
+      670,
+      671,
+      672,
+      673,
+      674,
+      675,
+      676,
+      677,
+      692,
+      694,
+      695,
+      696,
+      697,
       698,
-      700,
-      701,
-      702,
+      699,
+      729,
+      731,
       732,
+      733,
+      734,
       735,
       736,
       737,
       738,
+      739,
+      740,
+      741,
+      742,
+      743,
+      744,
+      745,
+      746,
+      747,
+      748,
+      765,
+      766,
+      767,
       768,
+      769,
+      770,
       771,
       772,
       773,
       774,
-      804,
-      807,
-      808,
-      809,
-      810,
+      775,
+      776,
+      794,
+      795,
+      796,
       811,
-      858,
-      859,
-      860,
-      874,
-      875,
+      812,
+      813,
+      828,
+      831,
+      832,
+      833,
+      834,
+      837,
+      838,
+      839,
+      840,
+      841,
+      843,
+      844,
+      845,
+      846,
       876,
+      879,
+      880,
+      881,
+      882,
+      884,
+      885,
+      886,
+      887,
+      888,
       890,
+      891,
       892,
+      893,
       894,
-      895,
       896,
       897,
       898,
       899,
-      900,
-      915,
+      914,
+      917,
       918,
       919,
       920,
       921,
-      922,
       923,
       924,
       925,
+      926,
       927,
       929,
       930,
@@ -23525,108 +10497,47 @@
       936,
       937,
       938,
-      939,
-      954,
+      953,
       955,
-      970,
-      973,
-      974,
-      975,
-      976,
-      977,
-      978,
+      956,
+      957,
+      958,
+      959,
+      960,
+      961,
+      962,
       979,
       980,
       981,
       982,
+      983,
       984,
       985,
       986,
       987,
+      988,
       989,
       990,
       991,
-      992,
-      993,
+      1006,
       1008,
+      1009,
       1010,
       1011,
       1012,
       1013,
       1014,
-      1058,
-      1059,
-      1060,
-      1074,
-      1075,
-      1076,
-      1090,
-      1092,
-      1094,
-      1095,
-      1096,
-      1097,
-      1098,
-      1099,
-      1100,
-      1101,
-      1118,
-      1134,
-      1136,
-      1137,
-      1138,
-      1155,
-      1156,
-      1157,
-      1158,
-      1159,
-      1160,
-      1161,
-      1162,
-      1163,
-      1164,
-      1165,
-      1167,
-      1168,
-      1169,
-      1170,
-      1172,
-      1188,
-      1190,
-      1191,
-      1208,
-      1209,
-      1210,
-      1211,
-      1212,
-      1213,
-      1214,
-      1215,
-      1216,
-      1217,
-      1218,
-      1219,
-      1220,
-      1221,
-      1222,
-      1223,
-      1224,
-      1225,
-      1226,
-      1227,
-      1242,
-      1244,
-      1245,
-      1246,
-      1247,
-      1249,
-      1250,
-      1251,
-      1252,
-      1253,
-      1269,
-      1271,
-      1272,
+      1015,
+      1016,
+      1017,
+      1018,
+      1019,
+      1020,
+      1021,
+      1022,
+      1024,
+      1025,
+      1041,
       0,
       5,
       7,
@@ -23644,79 +10555,79 @@
       31,
       33,
       0,
-      5,
-      7,
-      9,
-      11,
-      13,
-      15,
-      17,
-      19,
-      21,
-      23,
-      25,
-      27,
-      29,
-      31,
-      33,
-      35,
-      37,
-      39,
-      41,
-      43,
-      45,
-      47,
-      49,
-      51,
-      53,
-      55,
-      57,
-      59,
-      61,
-      63,
-      65,
-      67,
-      69,
-      71,
-      73,
-      75,
-      77,
-      79,
-      81,
-      83,
-      85,
-      87,
-      89,
-      91,
-      93,
-      95,
-      97,
-      99,
-      101,
-      103,
-      105,
-      107,
-      109,
-      111,
-      113,
-      115,
-      117,
-      119,
-      124,
+      6,
+      8,
+      10,
+      12,
+      14,
+      16,
+      18,
+      20,
+      22,
+      24,
+      26,
+      28,
+      30,
+      32,
+      34,
+      36,
+      38,
+      40,
+      42,
+      44,
+      46,
+      48,
+      50,
+      52,
+      54,
+      56,
+      58,
+      60,
+      62,
+      64,
+      66,
+      68,
+      70,
+      72,
+      74,
+      76,
+      78,
+      80,
+      82,
+      84,
+      86,
+      88,
+      90,
+      92,
+      94,
+      96,
+      98,
+      100,
+      102,
+      104,
+      106,
+      108,
+      110,
+      112,
+      114,
+      116,
+      118,
+      120,
+      122,
       126,
-      128,
-      130,
-      132,
-      134,
-      136,
-      151,
-      152,
-      154,
-      155,
-      156,
+      140,
+      141,
+      142,
       157,
       158,
-      173,
+      160,
+      175,
+      177,
+      178,
+      179,
+      180,
+      181,
+      182,
       0,
       3,
       5,
@@ -23776,19020 +10687,27028 @@
       129,
       130,
       145,
-      147,
+      146,
+      148,
       149,
       150,
-      151,
-      152
+      151
     ],
+    "ax": {
+      "source": [
+        [
+          0.0,
+          0.0
+        ],
+        [
+          0.00140955829402094,
+          0.0
+        ],
+        [
+          0.00281911658804188,
+          0.0
+        ],
+        [
+          0.00563823317608376,
+          0.0
+        ],
+        [
+          0.00845734976412564,
+          0.0
+        ],
+        [
+          0.01127646635216752,
+          0.0
+        ],
+        [
+          0.039467632232586314,
+          0.0
+        ],
+        [
+          0.04085528032029989,
+          0.0
+        ],
+        [
+          0.04224292840801347,
+          0.0
+        ],
+        [
+          0.04501822458344063,
+          0.0
+        ],
+        [
+          0.047793520758867794,
+          0.0
+        ],
+        [
+          0.050568816934294956,
+          0.0
+        ],
+        [
+          0.051535065794208836,
+          0.0
+        ],
+        [
+          0.052501314654122715,
+          0.0
+        ],
+        [
+          0.05443381237395048,
+          0.0
+        ],
+        [
+          0.056366310093778245,
+          0.0
+        ],
+        [
+          0.05829880781360601,
+          0.0
+        ],
+        [
+          0.06066778422864502,
+          0.0
+        ],
+        [
+          0.06303676064368403,
+          0.0
+        ],
+        [
+          0.06540573705872305,
+          0.0
+        ],
+        [
+          0.08909550120911316,
+          0.0
+        ],
+        [
+          0.09280001741983737,
+          0.0
+        ],
+        [
+          0.09574786203637055,
+          0.0
+        ],
+        [
+          0.09869570665290373,
+          0.0
+        ],
+        [
+          0.10099207719695144,
+          0.0
+        ],
+        [
+          0.10328844774099916,
+          0.0
+        ],
+        [
+          0.10558481828504687,
+          0.0
+        ],
+        [
+          0.1101775593731423,
+          0.0
+        ],
+        [
+          0.11477030046123773,
+          0.0
+        ],
+        [
+          0.11936304154933317,
+          0.0
+        ],
+        [
+          0.1312706469438581,
+          0.0
+        ],
+        [
+          0.14317825233838302,
+          0.0
+        ],
+        [
+          0.1499601229088181,
+          0.0
+        ],
+        [
+          0.1542012180187087,
+          0.0
+        ],
+        [
+          0.1584423131285993,
+          0.0
+        ],
+        [
+          0.1626834082384899,
+          0.0
+        ],
+        [
+          0.1711655984582711,
+          0.0
+        ],
+        [
+          0.17964778867805228,
+          0.0
+        ],
+        [
+          0.18812997889783348,
+          0.0
+        ],
+        [
+          0.19446537171097383,
+          0.0
+        ],
+        [
+          0.20080076452411422,
+          0.0
+        ],
+        [
+          0.20566109450366143,
+          0.0
+        ],
+        [
+          0.21052142448320865,
+          0.0
+        ],
+        [
+          0.21538175446275587,
+          0.0
+        ],
+        [
+          0.22510241442185028,
+          0.0
+        ],
+        [
+          0.23482307438094469,
+          0.0
+        ],
+        [
+          0.2445437343400391,
+          0.0
+        ],
+        [
+          0.2542643942991335,
+          0.0
+        ],
+        [
+          0.3514709938900776,
+          0.0
+        ],
+        [
+          0.36324670161934375,
+          0.0
+        ],
+        [
+          0.3693547037882063,
+          -0.0030269621077284744
+        ],
+        [
+          0.3754627059570688,
+          -0.003088642716944045
+        ],
+        [
+          0.3876787102947939,
+          -0.0032121276299862302
+        ],
+        [
+          0.39989471463251897,
+          -0.0033359537734300978
+        ],
+        [
+          0.41211071897024404,
+          -0.0034601510479507895
+        ],
+        [
+          0.47147904178591876,
+          -0.004070966421044331
+        ],
+        [
+          0.5078212847273655,
+          -0.0044517412651831675
+        ],
+        [
+          0.5343387025617514,
+          -0.004733338737464908
+        ],
+        [
+          0.5608561203961373,
+          -0.005018534797731659
+        ],
+        [
+          0.5873735382305232,
+          -0.005308405560720647
+        ],
+        [
+          0.6404083738992948,
+          -0.005906902952135506
+        ],
+        [
+          0.6934432095680665,
+          -0.006541200785322938
+        ],
+        [
+          0.7464780452368381,
+          -0.007225744416434298
+        ],
+        [
+          0.7995128809056098,
+          -0.007977667489374693
+        ],
+        [
+          0.813164227469089,
+          -0.008184469610407705
+        ],
+        [
+          0.8268155740325682,
+          -0.00839731421163553
+        ],
+        [
+          0.8404669205960474,
+          -0.008616584313241884
+        ],
+        [
+          0.8775732859954444,
+          -0.009248267461047968
+        ],
+        [
+          0.9146796513948413,
+          -0.009937026229629591
+        ],
+        [
+          0.9517860167942382,
+          -0.010689559802187283
+        ],
+        [
+          0.9674325642455079,
+          -0.011027480874704053
+        ],
+        [
+          0.9990075872778321,
+          -0.011749480939872598
+        ],
+        [
+          1.0183793592598076,
+          -0.012214131554285666
+        ],
+        [
+          1.037751131241783,
+          -0.012698191094651926
+        ],
+        [
+          1.0571229032237586,
+          -0.013202315635780056
+        ],
+        [
+          1.0878788324799102,
+          -0.014044106109253614
+        ],
+        [
+          1.118634761736062,
+          -0.014936349243503063
+        ],
+        [
+          1.1439443303803107,
+          -0.01570773756725194
+        ],
+        [
+          1.1692538990245596,
+          -0.016511151296403563
+        ],
+        [
+          1.1945634676688084,
+          -0.01734450610074655
+        ],
+        [
+          1.2316568052102488,
+          -0.018615645815803376
+        ],
+        [
+          1.2687501427516892,
+          -0.019935424765515117
+        ],
+        [
+          1.3058434802931296,
+          -0.021288891978044715
+        ],
+        [
+          1.34293681783457,
+          -0.02265848619427248
+        ],
+        [
+          1.4021386812930872,
+          -0.024827960089876193
+        ],
+        [
+          1.447031703480718,
+          -0.02641400636718034
+        ],
+        [
+          1.491924725668349,
+          -0.027905753615732075
+        ],
+        [
+          1.5260726318617992,
+          -0.028931875428742038
+        ],
+        [
+          1.5602205380552494,
+          -0.02985857643694722
+        ],
+        [
+          1.5943684442486996,
+          -0.0306846441865034
+        ],
+        [
+          1.6285163504421498,
+          -0.03140671446283154
+        ],
+        [
+          1.6626642566356,
+          -0.032027145886850746
+        ],
+        [
+          1.6968121628290502,
+          -0.032554283587969794
+        ],
+        [
+          1.7309600690225004,
+          -0.03300282425869648
+        ],
+        [
+          1.770308643380365,
+          -0.03344845222900766
+        ],
+        [
+          1.8096572177382295,
+          -0.03385552025442423
+        ],
+        [
+          1.849005792096094,
+          -0.034270391722624166
+        ],
+        [
+          1.8883543664539586,
+          -0.03474037463868506
+        ],
+        [
+          1.9277029408118231,
+          -0.03530806290820723
+        ],
+        [
+          1.9670515151696877,
+          -0.03600617087909801
+        ],
+        [
+          2.006400089527552,
+          -0.036849310534669784
+        ],
+        [
+          2.0457486638854165,
+          -0.03781664945690767
+        ],
+        [
+          2.085097238243281,
+          -0.038911249029033146
+        ],
+        [
+          2.124445812601145,
+          -0.040093686188499705
+        ],
+        [
+          2.1637943869590095,
+          -0.041309226830694795
+        ],
+        [
+          2.203142961316874,
+          -0.0424944382088127
+        ],
+        [
+          2.242491535674738,
+          -0.0435868394094045
+        ],
+        [
+          2.2818401100326025,
+          -0.04453407860666117
+        ],
+        [
+          2.3211886843904668,
+          -0.04530379195023794
+        ],
+        [
+          2.360537258748331,
+          -0.04589079967614193
+        ],
+        [
+          2.3998858331061954,
+          -0.04632000057076563
+        ],
+        [
+          2.4392344074640597,
+          -0.04664426592185132
+        ],
+        [
+          2.478582981821924,
+          -0.04693480169799083
+        ],
+        [
+          2.5179315561797884,
+          -0.047299151861619516
+        ],
+        [
+          2.5572801305376527,
+          -0.047824381233399785
+        ],
+        [
+          2.596628704895517,
+          -0.04851370637482309
+        ],
+        [
+          2.6359772792533813,
+          -0.049372456304063894
+        ],
+        [
+          2.6753258536112456,
+          -0.05037007387262382
+        ],
+        [
+          2.71467442796911,
+          -0.051442127574891125
+        ],
+        [
+          2.746682540487563,
+          -0.05230938246560379
+        ],
+        [
+          2.778690653006016,
+          -0.05312171650877009
+        ],
+        [
+          2.810698765524469,
+          -0.0538403226051024
+        ],
+        [
+          2.842706878042922,
+          -0.0544417627651317
+        ],
+        [
+          2.874714990561375,
+          -0.05492279305255541
+        ],
+        [
+          2.9109277644238576,
+          -0.055284628760639526
+        ],
+        [
+          2.940339896156497,
+          -0.0553717168099032
+        ],
+        [
+          2.9638563968017557,
+          -0.05541461390078678
+        ],
+        [
+          2.9873728974470146,
+          -0.0554656949198119
+        ],
+        [
+          2.991532758872659,
+          -0.05547701330643866
+        ],
+        [
+          2.995692620298303,
+          -0.05548924779677973
+        ],
+        [
+          2.999852481723947,
+          -0.05550245715946383
+        ],
+        [
+          3.0011406359017885,
+          -0.05547718653222559
+        ],
+        [
+          3.00242879007963,
+          -0.055409692650541444
+        ],
+        [
+          3.0050050984353125,
+          -0.055274832455319514
+        ],
+        [
+          3.007581406790995,
+          -0.055139984120409484
+        ],
+        [
+          3.0312400452524226,
+          -0.053903883765297825
+        ],
+        [
+          3.05489868371385,
+          -0.05267581401038277
+        ],
+        [
+          3.0785573221752776,
+          -0.0514549252360473
+        ],
+        [
+          3.102215960636705,
+          -0.050234679677889485
+        ],
+        [
+          3.120664542586555,
+          -0.0492784661739456
+        ],
+        [
+          3.139113124536405,
+          -0.04831057480680693
+        ],
+        [
+          3.1575617064862547,
+          -0.047325048611777554
+        ],
+        [
+          3.194458870385954,
+          -0.04527229739377796
+        ],
+        [
+          3.2233916577517485,
+          -0.043558089315860055
+        ],
+        [
+          3.252324445117543,
+          -0.04172974003433278
+        ],
+        [
+          3.2812572324833376,
+          -0.03977851436259784
+        ],
+        [
+          3.2864042093564865,
+          -0.039418266771184936
+        ],
+        [
+          3.2915511862296354,
+          -0.03905422124663509
+        ],
+        [
+          3.2966981631027843,
+          -0.03868603360600319
+        ],
+        [
+          3.3044731976480057,
+          -0.038271591893937695
+        ],
+        [
+          3.312248232193227,
+          -0.03800116192193798
+        ],
+        [
+          3.3200232667384486,
+          -0.037725327865672766
+        ],
+        [
+          3.3299608976332786,
+          -0.037365227971437334
+        ],
+        [
+          3.3398985285281086,
+          -0.0369976069619815
+        ],
+        [
+          3.3498361594229387,
+          -0.03662306375857229
+        ],
+        [
+          3.3684063767347974,
+          -0.03590919389091014
+        ],
+        [
+          3.386976594046656,
+          -0.03518031159402644
+        ],
+        [
+          3.4020328166662903,
+          -0.03461388344615682
+        ],
+        [
+          3.4113057466050263,
+          -0.034453468100389184
+        ],
+        [
+          3.4205786765437622,
+          -0.03429389631050873
+        ],
+        [
+          3.429851606482498,
+          -0.03413565967060687
+        ],
+        [
+          3.4462125806335115,
+          -0.033861662552400744
+        ],
+        [
+          3.462573554784525,
+          -0.0335954193745372
+        ],
+        [
+          3.4789345289355382,
+          -0.03333803435627348
+        ],
+        [
+          3.5099101021393686,
+          -0.03287570770540302
+        ],
+        [
+          3.5343946919875657,
+          -0.032530498625090616
+        ],
+        [
+          3.558879281835763,
+          -0.03219843780400474
+        ],
+        [
+          3.58336387168396,
+          -0.0318725542441688
+        ],
+        [
+          3.6154318916074843,
+          -0.03144560340535878
+        ],
+        [
+          3.6474999115310087,
+          -0.03099967209076228
+        ],
+        [
+          3.679567931454533,
+          -0.03051775800180575
+        ],
+        [
+          3.7116359513780575,
+          -0.029987982603058686
+        ],
+        [
+          3.750677226849746,
+          -0.029273199765419953
+        ],
+        [
+          3.789718502321435,
+          -0.028491735029703886
+        ],
+        [
+          3.8287597777931235,
+          -0.027668464652279727
+        ],
+        [
+          3.867801053264812,
+          -0.02683444516572623
+        ],
+        [
+          3.906842328736501,
+          -0.026120334054908656
+        ],
+        [
+          3.9127975041938576,
+          -0.026099778904980095
+        ],
+        [
+          3.9187526796512144,
+          -0.026080231747108395
+        ],
+        [
+          3.9247078551085712,
+          -0.026061683870328426
+        ],
+        [
+          3.9366182060232844,
+          -0.026027517724494742
+        ],
+        [
+          3.9485285569379975,
+          -0.025997133852765593
+        ],
+        [
+          3.9604389078527107,
+          -0.02597030495239527
+        ],
+        [
+          3.9894733064604,
+          -0.02591773882246814
+        ],
+        [
+          4.018507705068089,
+          -0.025878642319248208
+        ],
+        [
+          4.047542103675778,
+          -0.02584568230886336
+        ],
+        [
+          4.0765765022834675,
+          -0.02581113406163777
+        ],
+        [
+          4.119155795005119,
+          -0.025744242061700142
+        ],
+        [
+          4.16173508772677,
+          -0.025646395342011494
+        ],
+        [
+          4.1691207712068685,
+          -0.025625477863865712
+        ],
+        [
+          4.176506454686967,
+          -0.025603494523957458
+        ],
+        [
+          4.1838921381670655,
+          -0.025580508107952135
+        ],
+        [
+          4.1986635051272625,
+          -0.02553194562399161
+        ],
+        [
+          4.2134348720874595,
+          -0.02548038551202507
+        ],
+        [
+          4.2282062390476565,
+          -0.02542649854156525
+        ],
+        [
+          4.264323210631898,
+          -0.025288747704815685
+        ],
+        [
+          4.300440182216139,
+          -0.025150584534515415
+        ],
+        [
+          4.33655715380038,
+          -0.025021776399665262
+        ],
+        [
+          4.372674125384622,
+          -0.024909432167901105
+        ],
+        [
+          4.416044435312633,
+          -0.0248010555808882
+        ],
+        [
+          4.459414745240645,
+          -0.02471942377392741
+        ],
+        [
+          4.502785055168657,
+          -0.02465367077559679
+        ],
+        [
+          4.546155365096668,
+          -0.024588660676952468
+        ],
+        [
+          4.58952567502468,
+          -0.024508770942233887
+        ],
+        [
+          4.632895984952691,
+          -0.024389087398405482
+        ],
+        [
+          4.676266294880703,
+          -0.02424825841704896
+        ],
+        [
+          4.719636604808715,
+          -0.02409364868702565
+        ],
+        [
+          4.768224902129621,
+          -0.02391799740926897
+        ],
+        [
+          4.816813199450527,
+          -0.023754546855802056
+        ],
+        [
+          4.865401496771433,
+          -0.023612724539462254
+        ],
+        [
+          4.913989794092339,
+          -0.02349316006705792
+        ],
+        [
+          4.962578091413246,
+          -0.023388409390379686
+        ],
+        [
+          5.016300880486902,
+          -0.023277628652675304
+        ],
+        [
+          5.070023669560559,
+          -0.02315812409551697
+        ],
+        [
+          5.123746458634216,
+          -0.023030001541512427
+        ],
+        [
+          5.177469247707872,
+          -0.022879870799222032
+        ],
+        [
+          5.219601255563254,
+          -0.022780359989011525
+        ],
+        [
+          5.261733263418636,
+          -0.022696639365148014
+        ],
+        [
+          5.3038652712740175,
+          -0.022608909271359137
+        ],
+        [
+          5.345997279129399,
+          -0.022496673005541926
+        ],
+        [
+          5.388129286984781,
+          -0.022352660867976177
+        ],
+        [
+          5.438594166103664,
+          -0.022154391473668152
+        ],
+        [
+          5.489059045222548,
+          -0.021959780614435567
+        ],
+        [
+          5.539523924341431,
+          -0.021799333530988035
+        ],
+        [
+          5.589988803460314,
+          -0.02168344149415918
+        ],
+        [
+          5.6404536825791975,
+          -0.02159960149731249
+        ],
+        [
+          5.690918561698081,
+          -0.02152459983979231
+        ],
+        [
+          5.741383440816964,
+          -0.021438998463048267
+        ],
+        [
+          5.7918483199358475,
+          -0.02133350176374363
+        ],
+        [
+          5.842313199054731,
+          -0.021207449636295166
+        ],
+        [
+          5.900175444574162,
+          -0.021043322415974734
+        ],
+        [
+          5.958037690093594,
+          -0.020870303098995485
+        ],
+        [
+          6.015899935613025,
+          -0.020703288729285764
+        ],
+        [
+          6.073762181132457,
+          -0.020554249289449558
+        ],
+        [
+          6.1316244266518884,
+          -0.020427443182804768
+        ],
+        [
+          6.18948667217132,
+          -0.020318103469174793
+        ],
+        [
+          6.2473489176907515,
+          -0.0202156547662986
+        ],
+        [
+          6.305211163210183,
+          -0.020107664370484758
+        ],
+        [
+          6.374869724777001,
+          -0.01996060358120691
+        ],
+        [
+          6.44452828634382,
+          -0.01980161154273052
+        ],
+        [
+          6.514186847910638,
+          -0.0196353381260077
+        ],
+        [
+          6.583845409477457,
+          -0.019471866941685713
+        ],
+        [
+          6.653503971044275,
+          -0.019322765618631804
+        ],
+        [
+          6.723162532611093,
+          -0.01919303852756263
+        ],
+        [
+          6.792821094177912,
+          -0.019078552877787144
+        ],
+        [
+          6.856149583247434,
+          -0.018977253892380735
+        ],
+        [
+          6.919478072316956,
+          -0.0188711716851643
+        ],
+        [
+          6.982806561386478,
+          -0.01875619220978294
+        ],
+        [
+          7.046135050456,
+          -0.018631715219254528
+        ],
+        [
+          7.109463539525522,
+          -0.01850095019541831
+        ],
+        [
+          7.172792028595044,
+          -0.018368760433905545
+        ],
+        [
+          7.236120517664566,
+          -0.01823982059654556
+        ],
+        [
+          7.299449006734088,
+          -0.018117652307550393
+        ],
+        [
+          7.36277749580361,
+          -0.018003641050770305
+        ],
+        [
+          7.441907419493829,
+          -0.017870753779909543
+        ],
+        [
+          7.521037343184047,
+          -0.01774250874983943
+        ],
+        [
+          7.600167266874266,
+          -0.017613085891476612
+        ],
+        [
+          7.696303025687341,
+          -0.01745015136429014
+        ],
+        [
+          7.7924387845004155,
+          -0.01727880512345754
+        ],
+        [
+          7.88857454331349,
+          -0.017102869315790546
+        ],
+        [
+          7.984710302126565,
+          -0.016930238183680085
+        ],
+        [
+          8.08084606093964,
+          -0.016766998609323715
+        ],
+        [
+          8.176981819752715,
+          -0.016613699606007677
+        ],
+        [
+          8.27311757856579,
+          -0.016466224242892
+        ],
+        [
+          8.374791072592975,
+          -0.01630884660527351
+        ],
+        [
+          8.47646456662016,
+          -0.01614855479698611
+        ],
+        [
+          8.578138060647346,
+          -0.015983740087308525
+        ],
+        [
+          8.679811554674531,
+          -0.01581691839245141
+        ],
+        [
+          8.781485048701716,
+          -0.015651105651370338
+        ],
+        [
+          8.883158542728902,
+          -0.015488524610332234
+        ],
+        [
+          9.00524652036951,
+          -0.015298664655501436
+        ],
+        [
+          9.12733449801012,
+          -0.015115623698629666
+        ],
+        [
+          9.249422475650729,
+          -0.014937701962656572
+        ],
+        [
+          9.371510453291338,
+          -0.014762357038231198
+        ],
+        [
+          9.493598430931947,
+          -0.014587851374957902
+        ],
+        [
+          9.615686408572556,
+          -0.01441261130720732
+        ],
+        [
+          9.638495054883064,
+          -0.014379616914875807
+        ],
+        [
+          9.661303701193573,
+          -0.014346393085558235
+        ],
+        [
+          9.684112347504081,
+          -0.014312877357658581
+        ],
+        [
+          9.729729640125099,
+          -0.014245164397260677
+        ],
+        [
+          9.775346932746116,
+          -0.014176870090597801
+        ],
+        [
+          9.820964225367133,
+          -0.014108392349567867
+        ],
+        [
+          9.921906879777866,
+          -0.013958486341110478
+        ],
+        [
+          10.004312108890508,
+          -0.013837449717459862
+        ],
+        [
+          10.08671733800315,
+          -0.013719947375356865
+        ],
+        [
+          10.16912256711579,
+          -0.013605819897743537
+        ],
+        [
+          10.318508402311611,
+          -0.0134039969262753
+        ],
+        [
+          10.416310959001898,
+          -0.01327377740256407
+        ],
+        [
+          10.514113515692184,
+          -0.013142208080687738
+        ],
+        [
+          10.61191607238247,
+          -0.013008655236986832
+        ],
+        [
+          10.709718629072757,
+          -0.01287346795689301
+        ],
+        [
+          10.84073505366698,
+          -0.012692824921911575
+        ],
+        [
+          10.935791309767657,
+          -0.012563639133104865
+        ],
+        [
+          11.030847565868333,
+          -0.012437166160676647
+        ],
+        [
+          11.12590382196901,
+          -0.012313612679267047
+        ],
+        [
+          11.220960078069686,
+          -0.01219219981741413
+        ],
+        [
+          11.34293278943959,
+          -0.01203787043804025
+        ],
+        [
+          11.4367198655186,
+          -0.011919353960322919
+        ],
+        [
+          11.530506941597611,
+          -0.011800168228437486
+        ],
+        [
+          11.624294017676622,
+          -0.011680380390848368
+        ],
+        [
+          11.718081093755632,
+          -0.011560299773523075
+        ],
+        [
+          11.830682395509069,
+          -0.011416643989532245
+        ],
+        [
+          11.943283697262505,
+          -0.011274748585258173
+        ],
+        [
+          12.055884999015941,
+          -0.01113514494692151
+        ],
+        [
+          12.168486300769377,
+          -0.010998033748900675
+        ],
+        [
+          12.29994439393496,
+          -0.01084019850395897
+        ],
+        [
+          12.404633593778348,
+          -0.010715492447068473
+        ],
+        [
+          12.509322793621736,
+          -0.010590970278211372
+        ],
+        [
+          12.614011993465125,
+          -0.010466116641555726
+        ],
+        [
+          12.718701193308513,
+          -0.010341074344711617
+        ],
+        [
+          12.865684810686352,
+          -0.010165806037274926
+        ],
+        [
+          12.973565119592086,
+          -0.010037958666119172
+        ],
+        [
+          13.08144542849782,
+          -0.00991135022621537
+        ],
+        [
+          13.189325737403555,
+          -0.009786180792620313
+        ],
+        [
+          13.29720604630929,
+          -0.009662551383287749
+        ],
+        [
+          13.455915925693203,
+          -0.009482630071993764
+        ],
+        [
+          13.572668910835402,
+          -0.00935136960324212
+        ],
+        [
+          13.6894218959776,
+          -0.009220381836648256
+        ],
+        [
+          13.8061748811198,
+          -0.009089420098723041
+        ],
+        [
+          13.922927866261999,
+          -0.008958449378222044
+        ],
+        [
+          14.085961813353116,
+          -0.008775951423239284
+        ],
+        [
+          14.204687031875425,
+          -0.008643805107240115
+        ],
+        [
+          14.323412250397734,
+          -0.008512640768034235
+        ],
+        [
+          14.442137468920043,
+          -0.008382815450187903
+        ],
+        [
+          14.560862687442352,
+          -0.008254208418402673
+        ],
+        [
+          14.727812813776477,
+          -0.008075136142044742
+        ],
+        [
+          14.852763845864722,
+          -0.007941983273262454
+        ],
+        [
+          14.977714877952966,
+          -0.0078091994962652695
+        ],
+        [
+          15.10266591004121,
+          -0.0076764955983059865
+        ],
+        [
+          15.227616942129455,
+          -0.007543766912683965
+        ],
+        [
+          15.39474055277627,
+          -0.00736655066548822
+        ],
+        [
+          15.526750000917001,
+          -0.007227015979521585
+        ],
+        [
+          15.658759449057733,
+          -0.007088317770354865
+        ],
+        [
+          15.790768897198465,
+          -0.0069505455656142644
+        ],
+        [
+          15.922778345339196,
+          -0.006813921867434071
+        ],
+        [
+          16.079671368014623,
+          -0.006652711108878382
+        ],
+        [
+          16.23656439069005,
+          -0.006492558478556674
+        ],
+        [
+          16.393457413365475,
+          -0.0063329007827303396
+        ],
+        [
+          16.5503504360409,
+          -0.006173557579203678
+        ],
+        [
+          16.72307251287968,
+          -0.005998111619355106
+        ],
+        [
+          16.895794589718456,
+          -0.005822830658495152
+        ],
+        [
+          17.068516666557233,
+          -0.005647854616249982
+        ],
+        [
+          17.24123874339601,
+          -0.005473598143856109
+        ],
+        [
+          17.413960820234788,
+          -0.005300208822632033
+        ],
+        [
+          17.60482627556807,
+          -0.005109604524674535
+        ],
+        [
+          17.79569173090135,
+          -0.004919865039193972
+        ],
+        [
+          17.98655718623463,
+          -0.0047304789822527615
+        ],
+        [
+          18.17742264156791,
+          -0.004541146910771941
+        ],
+        [
+          18.368288096901193,
+          -0.004351462484957729
+        ],
+        [
+          18.559153552234473,
+          -0.004161590558752337
+        ],
+        [
+          18.750019007567754,
+          -0.0039716223967916214
+        ],
+        [
+          18.940884462901035,
+          -0.0037815031077792277
+        ],
+        [
+          19.160009857916293,
+          -0.003563204571214804
+        ],
+        [
+          19.37913525293155,
+          -0.0033447034408708833
+        ],
+        [
+          19.59826064794681,
+          -0.00312575119874103
+        ],
+        [
+          19.817386042962067,
+          -0.0029061500337451357
+        ],
+        [
+          20.036511437977325,
+          -0.002685562280033936
+        ],
+        [
+          20.343119545325326,
+          -0.0023748122931121305
+        ],
+        [
+          20.649727652673327,
+          -0.00206112558709195
+        ],
+        [
+          20.95633576002133,
+          -0.0017440145913698753
+        ],
+        [
+          21.26294386736933,
+          -0.0014230499001599097
+        ],
+        [
+          21.56955197471733,
+          -0.001097853717114816
+        ],
+        [
+          21.876160082065333,
+          -0.0007681380057590692
+        ],
+        [
+          22.182768189413334,
+          -0.000433774710524202
+        ],
+        [
+          22.489376296761336,
+          -9.490607526432566e-05
+        ],
+        [
+          22.837549744359293,
+          0.00029451323532818634
+        ],
+        [
+          23.18572319195725,
+          0.0006871009133735037
+        ],
+        [
+          23.53389663955521,
+          0.0010798260674245946
+        ],
+        [
+          23.882070087153167,
+          0.0014682882597821451
+        ],
+        [
+          24.230243534751125,
+          0.0018466512010455606
+        ],
+        [
+          24.578416982349083,
+          0.002207361666810793
+        ],
+        [
+          24.92659042994704,
+          0.0025405454528627013
+        ],
+        [
+          25.274763877545,
+          0.0028318338864742726
+        ],
+        [
+          25.544320922023445,
+          0.003014977574378781
+        ],
+        [
+          25.81387796650189,
+          0.0031457722300459994
+        ],
+        [
+          25.885098654500275,
+          0.003169532598429615
+        ],
+        [
+          25.88571428571429,
+          0.0031697162339645512
+        ],
+        [
+          25.891725275535915,
+          0.0031714742294924594
+        ],
+        [
+          25.89773626535754,
+          0.003173195917014324
+        ],
+        [
+          25.90975824500079,
+          0.0031765585767213464
+        ],
+        [
+          25.921780224644042,
+          0.003179773926965045
+        ],
+        [
+          25.933802204287293,
+          0.0031828407492704405
+        ],
+        [
+          26.05402200071982,
+          0.0032051025371839844
+        ],
+        [
+          26.174241797152344,
+          0.00321150734401951
+        ],
+        [
+          26.29446159358487,
+          0.003201793672558108
+        ],
+        [
+          26.414681390017396,
+          0.003176700545682836
+        ],
+        [
+          26.59056092778596,
+          0.003117158945683641
+        ],
+        [
+          26.76644046555452,
+          0.003043827332044516
+        ],
+        [
+          26.942320003323083,
+          0.002982022744534445
+        ],
+        [
+          27.118199541091645,
+          0.0029702561198084376
+        ],
+        [
+          27.294079078860207,
+          0.0030603317948608767
+        ],
+        [
+          27.38571428571429,
+          0.0031680715577319953
+        ],
+        [
+          27.397496400123647,
+          0.17648429856039446
+        ],
+        [
+          27.409278514533003,
+          0.17457849319205712
+        ],
+        [
+          27.43284274335172,
+          0.17084723869780405
+        ],
+        [
+          27.456406972170438,
+          0.16724861734876717
+        ],
+        [
+          27.479971200989155,
+          0.1637763798637087
+        ],
+        [
+          27.597382226258187,
+          0.14817203317232894
+        ],
+        [
+          27.71479325152722,
+          0.13494908453096133
+        ],
+        [
+          27.83220427679625,
+          0.12363723208858804
+        ],
+        [
+          27.949615302065283,
+          0.11387130341001064
+        ],
+        [
+          28.127223521019754,
+          0.10141512285198101
+        ],
+        [
+          28.304831739974226,
+          0.09111629557225534
+        ],
+        [
+          28.482439958928698,
+          0.0824480101371677
+        ],
+        [
+          28.66004817788317,
+          0.07502727997150391
+        ],
+        [
+          28.83765639683764,
+          0.06857691528658343
+        ],
+        [
+          29.142165265211645,
+          0.059217019740475975
+        ],
+        [
+          29.44667413358565,
+          0.05144186460161367
+        ],
+        [
+          29.751183001959653,
+          0.04482455411664356
+        ],
+        [
+          30.055691870333657,
+          0.03910725395977617
+        ],
+        [
+          30.36020073870766,
+          0.03412249038666718
+        ],
+        [
+          30.664709607081665,
+          0.029755484200317598
+        ],
+        [
+          31.156066194366023,
+          0.023807882205487713
+        ],
+        [
+          31.64742278165038,
+          0.01899488149938837
+        ],
+        [
+          32.138779368934735,
+          0.015115224024571217
+        ],
+        [
+          32.63013595621909,
+          0.012001435215597534
+        ],
+        [
+          33.12149254350345,
+          0.0095120998403961
+        ],
+        [
+          33.61284913078781,
+          0.007528622809056421
+        ],
+        [
+          34.104205718072166,
+          0.005952281721813987
+        ],
+        [
+          34.59556230535652,
+          0.004701937001825264
+        ],
+        [
+          35.20520071519727,
+          0.0035065728433398237
+        ],
+        [
+          35.81483912503802,
+          0.0026129902699288297
+        ],
+        [
+          36.42447753487877,
+          0.0019452244851678692
+        ],
+        [
+          37.03411594471952,
+          0.0014468097835419662
+        ],
+        [
+          37.61030939313683,
+          0.0010926947470283987
+        ],
+        [
+          38.186502841554145,
+          0.0008244313536298119
+        ],
+        [
+          38.76269628997146,
+          0.0006212374399301214
+        ],
+        [
+          39.33888973838877,
+          0.0004673673530725614
+        ],
+        [
+          40.470199282925094,
+          0.00026626293658168435
+        ],
+        [
+          41.601508827461416,
+          0.0001482294614332737
+        ],
+        [
+          42.73281837199774,
+          7.970530123439573e-05
+        ],
+        [
+          43.86412791653406,
+          4.0940498343210174e-05
+        ],
+        [
+          45.065546566682556,
+          1.7326510382073643e-05
+        ],
+        [
+          46.26696521683105,
+          4.965082916348271e-06
+        ],
+        [
+          47.46838386697955,
+          -1.620087629797002e-06
+        ],
+        [
+          48.0644116487991,
+          -3.798594170271747e-06
+        ],
+        [
+          48.66043943061865,
+          -5.5349841552075965e-06
+        ],
+        [
+          49.2564672124382,
+          -6.828493152592069e-06
+        ],
+        [
+          49.85016027085198,
+          -7.781635574727504e-06
+        ],
+        [
+          50.44385332926576,
+          -8.487664145561194e-06
+        ],
+        [
+          51.037546387679534,
+          -9.00928498111242e-06
+        ],
+        [
+          52.22602215013901,
+          -9.677214643579856e-06
+        ],
+        [
+          53.414497912598485,
+          -1.0014170348737316e-05
+        ],
+        [
+          54.60297367505796,
+          -1.018232527004101e-05
+        ],
+        [
+          55.78628196962012,
+          -1.0261603160480453e-05
+        ],
+        [
+          56.96959026418228,
+          -1.0289118309276136e-05
+        ],
+        [
+          58.15289855874444,
+          -1.0285623433285533e-05
+        ],
+        [
+          59.80914674127502,
+          -1.0252074172218805e-05
+        ],
+        [
+          61.465394923805604,
+          -1.0201718152439906e-05
+        ],
+        [
+          63.12164310633619,
+          -1.0146616375773278e-05
+        ],
+        [
+          67.96806599954927,
+          -9.980457323153016e-06
+        ],
+        [
+          69.17967172285253,
+          -9.937553846053448e-06
+        ],
+        [
+          71.60288316945908,
+          -9.851489079117006e-06
+        ],
+        [
+          74.02609461606562,
+          -9.765965967287182e-06
+        ],
+        [
+          76.44930606267216,
+          -9.681693121691218e-06
+        ],
+        [
+          82.05653011294073,
+          -9.490486013176772e-06
+        ],
+        [
+          87.6637541632093,
+          -9.305168866066346e-06
+        ],
+        [
+          93.27097821347787,
+          -9.125257963726353e-06
+        ],
+        [
+          102.7701466845776,
+          -8.832984476358791e-06
+        ],
+        [
+          112.26931515567732,
+          -8.553247275601156e-06
+        ],
+        [
+          121.76848362677704,
+          -8.28635352900526e-06
+        ],
+        [
+          131.26765209787678,
+          -8.032394399956535e-06
+        ],
+        [
+          142.3439771582361,
+          -7.75222971550419e-06
+        ],
+        [
+          153.42030221859542,
+          -7.486226046011894e-06
+        ],
+        [
+          158.24761904761905,
+          -7.374724697111878e-06
+        ],
+        [
+          158.36654057116988,
+          -7.371760963814904e-06
+        ],
+        [
+          158.4854620947207,
+          -7.3688093937956944e-06
+        ],
+        [
+          159.74761904761905,
+          -7.337508180309087e-06
+        ],
+        [
+          159.74948515317416,
+          -0.013163974504333532
+        ],
+        [
+          159.75135125872927,
+          -0.012990733852713737
+        ],
+        [
+          159.75508346983946,
+          -0.012652238018480085
+        ],
+        [
+          159.75881568094965,
+          -0.012327008757557607
+        ],
+        [
+          159.76254789205984,
+          -0.012014360525074656
+        ],
+        [
+          159.78008817979105,
+          -0.010696006923225039
+        ],
+        [
+          159.79762846752226,
+          -0.00958634919753374
+        ],
+        [
+          159.81516875525347,
+          -0.008643680249672075
+        ],
+        [
+          159.83270904298467,
+          -0.00783606696183651
+        ],
+        [
+          159.85917311481012,
+          -0.006819822995907563
+        ],
+        [
+          159.88563718663556,
+          -0.005993252281337151
+        ],
+        [
+          159.912101258461,
+          -0.0053119185438944925
+        ],
+        [
+          159.93856533028645,
+          -0.00474343529520577
+        ],
+        [
+          159.9650294021119,
+          -0.004264075844451083
+        ],
+        [
+          160.01112136384918,
+          -0.0035912936305502047
+        ],
+        [
+          160.05721332558647,
+          -0.003070732137211348
+        ],
+        [
+          160.10330528732376,
+          -0.0026589337374546156
+        ],
+        [
+          160.14939724906105,
+          -0.002327327905947664
+        ],
+        [
+          160.19548921079834,
+          -0.002056047019763539
+        ],
+        [
+          160.24158117253563,
+          -0.0018309794239733813
+        ],
+        [
+          160.3166327641328,
+          -0.0015381728752864783
+        ],
+        [
+          160.39168435572998,
+          -0.001311537396550582
+        ],
+        [
+          160.46673594732715,
+          -0.0011318471645459932
+        ],
+        [
+          160.54178753892432,
+          -0.0009864431011379828
+        ],
+        [
+          160.6168391305215,
+          -0.0008666919066629405
+        ],
+        [
+          160.69189072211867,
+          -0.0007665639833370584
+        ],
+        [
+          160.81292628958846,
+          -0.0006359558964751518
+        ],
+        [
+          160.93396185705825,
+          -0.0005331940772444852
+        ],
+        [
+          161.05499742452804,
+          -0.0004505809023591839
+        ],
+        [
+          161.17603299199783,
+          -0.0003830096567207456
+        ],
+        [
+          161.29706855946762,
+          -0.0003269922116685253
+        ],
+        [
+          161.46985652170034,
+          -0.00026232130616196713
+        ],
+        [
+          161.64264448393305,
+          -0.0002113859960747637
+        ],
+        [
+          161.81543244616577,
+          -0.0001708407794709701
+        ],
+        [
+          161.9882204083985,
+          -0.00013834004678340303
+        ],
+        [
+          162.1610083706312,
+          -0.0001121713759635899
+        ],
+        [
+          162.38610275126362,
+          -8.548579617781871e-05
+        ],
+        [
+          162.61119713189603,
+          -6.522033087671833e-05
+        ],
+        [
+          162.83629151252845,
+          -4.9789834914002145e-05
+        ],
+        [
+          163.06138589316086,
+          -3.8033039229596276e-05
+        ],
+        [
+          163.3001953672972,
+          -2.8538859850406524e-05
+        ],
+        [
+          163.53900484143352,
+          -2.1440944480730453e-05
+        ],
+        [
+          163.77781431556986,
+          -1.6128540061818744e-05
+        ],
+        [
+          164.01699558831393,
+          -1.2141396559183512e-05
+        ],
+        [
+          164.256176861058,
+          -9.154059643448316e-06
+        ],
+        [
+          164.49535813380209,
+          -6.915870397313493e-06
+        ],
+        [
+          164.73455176863084,
+          -5.238862818998289e-06
+        ],
+        [
+          165.96552936083825,
+          -4.41524342194668e-07
+        ],
+        [
+          167.19650695304566,
+          4.6976957392347914e-07
+        ],
+        [
+          168.42748454525307,
+          2.764924292856163e-07
+        ],
+        [
+          172.0340398974043,
+          1.212870039017178e-07
+        ],
+        [
+          175.64059524955556,
+          -1.4955448025670039e-07
+        ],
+        [
+          179.2471506017068,
+          -2.2901212661310955e-07
+        ],
+        [
+          196.48491242496618,
+          -2.695521848579581e-07
+        ],
+        [
+          213.72267424822556,
+          -2.2566690615125323e-07
+        ],
+        [
+          230.96043607148493,
+          -2.1389661356387753e-07
+        ],
+        [
+          256.216460721343,
+          -1.8540462049703235e-07
+        ],
+        [
+          281.4724853712011,
+          -1.7541813170877246e-07
+        ],
+        [
+          298.21839993404154,
+          -1.7862043692566925e-07
+        ]
+      ],
+      "title": "Ax (M/S\u00b2) x Time (S)",
+      "inputs": [
+        "Time (s)"
+      ],
+      "outputs": [
+        "Ax (m/s\u00b2)"
+      ],
+      "interpolation": "spline",
+      "extrapolation": "zero",
+      "signature": {
+        "module": "rocketpy.mathutils.function",
+        "name": "Function",
+        "hash": 8532846656099
+      }
+    },
+    "ay": {
+      "source": [
+        [
+          0.0,
+          0.0
+        ],
+        [
+          0.00140955829402094,
+          0.0
+        ],
+        [
+          0.00281911658804188,
+          0.0
+        ],
+        [
+          0.00563823317608376,
+          0.0
+        ],
+        [
+          0.00845734976412564,
+          0.0
+        ],
+        [
+          0.01127646635216752,
+          0.0
+        ],
+        [
+          0.039467632232586314,
+          0.0
+        ],
+        [
+          0.04085528032029989,
+          0.0
+        ],
+        [
+          0.04224292840801347,
+          0.0
+        ],
+        [
+          0.04501822458344063,
+          0.0
+        ],
+        [
+          0.047793520758867794,
+          0.0
+        ],
+        [
+          0.050568816934294956,
+          0.0
+        ],
+        [
+          0.051535065794208836,
+          0.0
+        ],
+        [
+          0.052501314654122715,
+          0.0
+        ],
+        [
+          0.05443381237395048,
+          0.0
+        ],
+        [
+          0.056366310093778245,
+          0.0
+        ],
+        [
+          0.05829880781360601,
+          0.1706644804302643
+        ],
+        [
+          0.06066778422864502,
+          0.5776821615546295
+        ],
+        [
+          0.06303676064368403,
+          0.9847260914851849
+        ],
+        [
+          0.06540573705872305,
+          1.3918072982603042
+        ],
+        [
+          0.08909550120911316,
+          5.465593564449001
+        ],
+        [
+          0.09280001741983737,
+          6.193050421064156
+        ],
+        [
+          0.09574786203637055,
+          7.031205254634951
+        ],
+        [
+          0.09869570665290373,
+          7.8696872468374455
+        ],
+        [
+          0.10099207719695144,
+          8.259288725534795
+        ],
+        [
+          0.10328844774099916,
+          8.302114228575121
+        ],
+        [
+          0.10558481828504687,
+          8.344953590497084
+        ],
+        [
+          0.1101775593731423,
+          8.43068943292788
+        ],
+        [
+          0.11477030046123773,
+          8.516489707170914
+        ],
+        [
+          0.11936304154933317,
+          8.602324489309094
+        ],
+        [
+          0.1312706469438581,
+          8.825100434771459
+        ],
+        [
+          0.14317825233838302,
+          9.04825639755597
+        ],
+        [
+          0.1499601229088181,
+          9.175535229609874
+        ],
+        [
+          0.1542012180187087,
+          9.025344288957548
+        ],
+        [
+          0.1584423131285993,
+          8.87286123480521
+        ],
+        [
+          0.1626834082384899,
+          8.72025812071514
+        ],
+        [
+          0.1711655984582711,
+          8.414727848234941
+        ],
+        [
+          0.17964778867805228,
+          8.108790128530375
+        ],
+        [
+          0.18812997889783348,
+          7.802484657784046
+        ],
+        [
+          0.19446537171097383,
+          7.573407288029027
+        ],
+        [
+          0.20080076452411422,
+          7.375281178489148
+        ],
+        [
+          0.20566109450366143,
+          7.388116226214423
+        ],
+        [
+          0.21052142448320865,
+          7.400954727393606
+        ],
+        [
+          0.21538175446275587,
+          7.413796685096832
+        ],
+        [
+          0.22510241442185028,
+          7.439502684788325
+        ],
+        [
+          0.23482307438094469,
+          7.465221620825094
+        ],
+        [
+          0.2445437343400391,
+          7.49094534209077
+        ],
+        [
+          0.2542643942991335,
+          7.516682575247772
+        ],
+        [
+          0.3514709938900776,
+          7.774981405842344
+        ],
+        [
+          0.36324670161934375,
+          7.806390597571884
+        ],
+        [
+          0.3693547037882063,
+          8.670960885355235
+        ],
+        [
+          0.3754627059570688,
+          8.68698726294808
+        ],
+        [
+          0.3876787102947939,
+          8.719024184622855
+        ],
+        [
+          0.39989471463251897,
+          8.751095458265167
+        ],
+        [
+          0.41211071897024404,
+          8.783160791885214
+        ],
+        [
+          0.47147904178591876,
+          8.939597464332397
+        ],
+        [
+          0.5078212847273655,
+          9.025020721985028
+        ],
+        [
+          0.5343387025617514,
+          9.055338861683337
+        ],
+        [
+          0.5608561203961373,
+          9.086357257170297
+        ],
+        [
+          0.5873735382305232,
+          9.118294131704783
+        ],
+        [
+          0.6404083738992948,
+          9.185829821816112
+        ],
+        [
+          0.6934432095680665,
+          9.260094357819158
+        ],
+        [
+          0.7464780452368381,
+          9.34333328728396
+        ],
+        [
+          0.7995128809056098,
+          9.437914763305177
+        ],
+        [
+          0.813164227469089,
+          9.464381228725633
+        ],
+        [
+          0.8268155740325682,
+          9.491806579222239
+        ],
+        [
+          0.8404669205960474,
+          9.520203456393714
+        ],
+        [
+          0.8775732859954444,
+          9.602628651248523
+        ],
+        [
+          0.9146796513948413,
+          9.6931276650463
+        ],
+        [
+          0.9517860167942382,
+          9.792182751958611
+        ],
+        [
+          0.9674325642455079,
+          9.836574463935984
+        ],
+        [
+          0.9990075872778321,
+          9.930896010460524
+        ],
+        [
+          1.0183793592598076,
+          9.971009271008747
+        ],
+        [
+          1.037751131241783,
+          10.011412661373374
+        ],
+        [
+          1.0571229032237586,
+          10.053846417474283
+        ],
+        [
+          1.0878788324799102,
+          10.125030060509047
+        ],
+        [
+          1.118634761736062,
+          10.200426981923867
+        ],
+        [
+          1.1439443303803107,
+          10.265175452969228
+        ],
+        [
+          1.1692538990245596,
+          10.331813638562423
+        ],
+        [
+          1.1945634676688084,
+          10.399731618037118
+        ],
+        [
+          1.2316568052102488,
+          10.500486872929367
+        ],
+        [
+          1.2687501427516892,
+          10.600420217754193
+        ],
+        [
+          1.3058434802931296,
+          10.696732974764048
+        ],
+        [
+          1.34293681783457,
+          10.786564277126406
+        ],
+        [
+          1.4021386812930872,
+          10.909751093947058
+        ],
+        [
+          1.447031703480718,
+          10.98090667838561
+        ],
+        [
+          1.491924725668349,
+          11.028660837274673
+        ],
+        [
+          1.5260726318617992,
+          11.028678133604538
+        ],
+        [
+          1.5602205380552494,
+          11.006790346702894
+        ],
+        [
+          1.5943684442486996,
+          10.970035353519332
+        ],
+        [
+          1.6285163504421498,
+          10.919808048830744
+        ],
+        [
+          1.6626642566356,
+          10.858369288261002
+        ],
+        [
+          1.6968121628290502,
+          10.78863950810067
+        ],
+        [
+          1.7309600690225004,
+          10.714279114837462
+        ],
+        [
+          1.770308643380365,
+          10.62813088232732
+        ],
+        [
+          1.8096572177382295,
+          10.547780875957296
+        ],
+        [
+          1.849005792096094,
+          10.479614126549459
+        ],
+        [
+          1.8883543664539586,
+          10.42898364212237
+        ],
+        [
+          1.9277029408118231,
+          10.399361798675644
+        ],
+        [
+          1.9670515151696877,
+          10.391676364975936
+        ],
+        [
+          2.006400089527552,
+          10.401803655922274
+        ],
+        [
+          2.0457486638854165,
+          10.412645349853369
+        ],
+        [
+          2.085097238243281,
+          10.432816225752
+        ],
+        [
+          2.124445812601145,
+          10.453787770907667
+        ],
+        [
+          2.1637943869590095,
+          10.466290208161066
+        ],
+        [
+          2.203142961316874,
+          10.461609452706169
+        ],
+        [
+          2.242491535674738,
+          10.433290761869436
+        ],
+        [
+          2.2818401100326025,
+          10.378031082936012
+        ],
+        [
+          2.3211886843904668,
+          10.296533460771256
+        ],
+        [
+          2.360537258748331,
+          10.193738024270113
+        ],
+        [
+          2.3998858331061954,
+          10.078176836386795
+        ],
+        [
+          2.4392344074640597,
+          9.960959762220797
+        ],
+        [
+          2.478582981821924,
+          9.853183958064301
+        ],
+        [
+          2.5179315561797884,
+          9.778060744792544
+        ],
+        [
+          2.5572801305376527,
+          9.748936774851572
+        ],
+        [
+          2.596628704895517,
+          9.746836332120042
+        ],
+        [
+          2.6359772792533813,
+          9.764823518646093
+        ],
+        [
+          2.6753258536112456,
+          9.79277802153106
+        ],
+        [
+          2.71467442796911,
+          9.818031073745836
+        ],
+        [
+          2.746682540487563,
+          9.827642767010826
+        ],
+        [
+          2.778690653006016,
+          9.821906037213944
+        ],
+        [
+          2.810698765524469,
+          9.798224586354413
+        ],
+        [
+          2.842706878042922,
+          9.756976108603062
+        ],
+        [
+          2.874714990561375,
+          9.70164253370286
+        ],
+        [
+          2.9109277644238576,
+          9.606678875127027
+        ],
+        [
+          2.940339896156497,
+          9.474922686175656
+        ],
+        [
+          2.9638563968017557,
+          9.369339043920267
+        ],
+        [
+          2.9873728974470146,
+          9.270046932919048
+        ],
+        [
+          2.991532758872659,
+          9.253260453144579
+        ],
+        [
+          2.995692620298303,
+          9.236723229023285
+        ],
+        [
+          2.999852481723947,
+          9.22044245886926
+        ],
+        [
+          3.0011406359017885,
+          9.204499199188996
+        ],
+        [
+          3.00242879007963,
+          9.172928987870671
+        ],
+        [
+          3.0050050984353125,
+          9.109888945993648
+        ],
+        [
+          3.007581406790995,
+          9.046943476124781
+        ],
+        [
+          3.0312400452524226,
+          8.47247995014719
+        ],
+        [
+          3.05489868371385,
+          7.90505711226227
+        ],
+        [
+          3.0785573221752776,
+          7.343200628142166
+        ],
+        [
+          3.102215960636705,
+          6.785059890120774
+        ],
+        [
+          3.120664542586555,
+          6.351046063574358
+        ],
+        [
+          3.139113124536405,
+          5.916976612120918
+        ],
+        [
+          3.1575617064862547,
+          5.481602490108139
+        ],
+        [
+          3.194458870385954,
+          4.6040015773690985
+        ],
+        [
+          3.2233916577517485,
+          3.9064381112743987
+        ],
+        [
+          3.252324445117543,
+          3.1994862340334658
+        ],
+        [
+          3.2812572324833376,
+          2.4841328208656646
+        ],
+        [
+          3.2864042093564865,
+          2.3561102285055826
+        ],
+        [
+          3.2915511862296354,
+          2.2279232469222174
+        ],
+        [
+          3.2966981631027843,
+          2.099575059023329
+        ],
+        [
+          3.3044731976480057,
+          1.9542791609405004
+        ],
+        [
+          3.312248232193227,
+          1.85828421465903
+        ],
+        [
+          3.3200232667384486,
+          1.7620862012279186
+        ],
+        [
+          3.3299608976332786,
+          1.6389476828314697
+        ],
+        [
+          3.3398985285281086,
+          1.5157236245000363
+        ],
+        [
+          3.3498361594229387,
+          1.3925495037694986
+        ],
+        [
+          3.3684063767347974,
+          1.1631136006065328
+        ],
+        [
+          3.386976594046656,
+          0.9351526692169243
+        ],
+        [
+          3.4020328166662903,
+          0.7620091131756423
+        ],
+        [
+          3.4113057466050263,
+          0.7167367415600128
+        ],
+        [
+          3.4205786765437622,
+          0.6720984256173563
+        ],
+        [
+          3.429851606482498,
+          0.6281284562666299
+        ],
+        [
+          3.4462125806335115,
+          0.5522583831571837
+        ],
+        [
+          3.462573554784525,
+          0.4785573126518843
+        ],
+        [
+          3.4789345289355382,
+          0.40693950895137376
+        ],
+        [
+          3.5099101021393686,
+          0.27601215580570765
+        ],
+        [
+          3.5343946919875657,
+          0.1759441848994159
+        ],
+        [
+          3.558879281835763,
+          0.07758490532305452
+        ],
+        [
+          3.58336387168396,
+          -0.020367960419838134
+        ],
+        [
+          3.6154318916074843,
+          -0.14963599503278488
+        ],
+        [
+          3.6474999115310087,
+          -0.2824967167807547
+        ],
+        [
+          3.679567931454533,
+          -0.42068435598278303
+        ],
+        [
+          3.7116359513780575,
+          -0.5645696430047061
+        ],
+        [
+          3.750677226849746,
+          -0.746108478521518
+        ],
+        [
+          3.789718502321435,
+          -0.9312584593549882
+        ],
+        [
+          3.8287597777931235,
+          -1.1151008360781793
+        ],
+        [
+          3.867801053264812,
+          -1.2935206203073946
+        ],
+        [
+          3.906842328736501,
+          -1.4354080021305657
+        ],
+        [
+          3.9127975041938576,
+          -1.432958696145144
+        ],
+        [
+          3.9187526796512144,
+          -1.4303722293167833
+        ],
+        [
+          3.9247078551085712,
+          -1.427656491920781
+        ],
+        [
+          3.9366182060232844,
+          -1.4218803923533823
+        ],
+        [
+          3.9485285569379975,
+          -1.415693411941199
+        ],
+        [
+          3.9604389078527107,
+          -1.4091696407467953
+        ],
+        [
+          3.9894733064604,
+          -1.3923354674719446
+        ],
+        [
+          4.018507705068089,
+          -1.3751645120533167
+        ],
+        [
+          4.047542103675778,
+          -1.3588954108824978
+        ],
+        [
+          4.0765765022834675,
+          -1.3445322032273144
+        ],
+        [
+          4.119155795005119,
+          -1.327995917577802
+        ],
+        [
+          4.16173508772677,
+          -1.3171750486667237
+        ],
+        [
+          4.1691207712068685,
+          -1.3158755096599626
+        ],
+        [
+          4.176506454686967,
+          -1.3147019975657537
+        ],
+        [
+          4.1838921381670655,
+          -1.3136374181814006
+        ],
+        [
+          4.1986635051272625,
+          -1.311750231245956
+        ],
+        [
+          4.2134348720874595,
+          -1.3101004327724055
+        ],
+        [
+          4.2282062390476565,
+          -1.3085655530808482
+        ],
+        [
+          4.264323210631898,
+          -1.3046301208183215
+        ],
+        [
+          4.300440182216139,
+          -1.2992243791707576
+        ],
+        [
+          4.33655715380038,
+          -1.2911988450089502
+        ],
+        [
+          4.372674125384622,
+          -1.2801465884734862
+        ],
+        [
+          4.416044435312633,
+          -1.26328402960339
+        ],
+        [
+          4.459414745240645,
+          -1.244080485583667
+        ],
+        [
+          4.502785055168657,
+          -1.225038655444183
+        ],
+        [
+          4.546155365096668,
+          -1.2084414085652906
+        ],
+        [
+          4.58952567502468,
+          -1.1959824970324455
+        ],
+        [
+          4.632895984952691,
+          -1.1914723896735189
+        ],
+        [
+          4.676266294880703,
+          -1.1893914592442951
+        ],
+        [
+          4.719636604808715,
+          -1.1879154599064563
+        ],
+        [
+          4.768224902129621,
+          -1.1848099906274208
+        ],
+        [
+          4.816813199450527,
+          -1.178602616279927
+        ],
+        [
+          4.865401496771433,
+          -1.169016556037695
+        ],
+        [
+          4.913989794092339,
+          -1.157102578381056
+        ],
+        [
+          4.962578091413246,
+          -1.1447027608006666
+        ],
+        [
+          5.016300880486902,
+          -1.1326493483389755
+        ],
+        [
+          5.070023669560559,
+          -1.123891152783647
+        ],
+        [
+          5.123746458634216,
+          -1.1187150057021993
+        ],
+        [
+          5.177469247707872,
+          -1.115354988389764
+        ],
+        [
+          5.219601255563254,
+          -1.1132921100106046
+        ],
+        [
+          5.261733263418636,
+          -1.1105191619834516
+        ],
+        [
+          5.3038652712740175,
+          -1.105892983503746
+        ],
+        [
+          5.345997279129399,
+          -1.0988300391721544
+        ],
+        [
+          5.388129286984781,
+          -1.0895625540032405
+        ],
+        [
+          5.438594166103664,
+          -1.0769887587516922
+        ],
+        [
+          5.489059045222548,
+          -1.064974727577684
+        ],
+        [
+          5.539523924341431,
+          -1.0554330874195745
+        ],
+        [
+          5.589988803460314,
+          -1.0490557090489463
+        ],
+        [
+          5.6404536825791975,
+          -1.0451357248290387
+        ],
+        [
+          5.690918561698081,
+          -1.042137332624089
+        ],
+        [
+          5.741383440816964,
+          -1.0385337214944763
+        ],
+        [
+          5.7918483199358475,
+          -1.0333810052619583
+        ],
+        [
+          5.842313199054731,
+          -1.026455762657201
+        ],
+        [
+          5.900175444574162,
+          -1.0167636479490467
+        ],
+        [
+          5.958037690093594,
+          -1.0062849325678993
+        ],
+        [
+          6.015899935613025,
+          -0.9962986315853288
+        ],
+        [
+          6.073762181132457,
+          -0.9877570179796177
+        ],
+        [
+          6.1316244266518884,
+          -0.9809700876199805
+        ],
+        [
+          6.18948667217132,
+          -0.9755526084485951
+        ],
+        [
+          6.2473489176907515,
+          -0.9705592124029041
+        ],
+        [
+          6.305211163210183,
+          -0.9650885461618649
+        ],
+        [
+          6.374869724777001,
+          -0.9571354366824701
+        ],
+        [
+          6.44452828634382,
+          -0.9462104080735915
+        ],
+        [
+          6.514186847910638,
+          -0.9337240305727682
+        ],
+        [
+          6.583845409477457,
+          -0.9214158058188197
+        ],
+        [
+          6.653503971044275,
+          -0.9103321190456027
+        ],
+        [
+          6.723162532611093,
+          -0.9008643563666802
+        ],
+        [
+          6.792821094177912,
+          -0.8927785532747616
+        ],
+        [
+          6.856149583247434,
+          -0.8859364781905743
+        ],
+        [
+          6.919478072316956,
+          -0.8788428454557654
+        ],
+        [
+          6.982806561386478,
+          -0.8711052357182252
+        ],
+        [
+          7.046135050456,
+          -0.8626709580039128
+        ],
+        [
+          7.109463539525522,
+          -0.8536755288569184
+        ],
+        [
+          7.172792028595044,
+          -0.8444549292791405
+        ],
+        [
+          7.236120517664566,
+          -0.8354287768842346
+        ],
+        [
+          7.299449006734088,
+          -0.8269036178193522
+        ],
+        [
+          7.36277749580361,
+          -0.8190176445538034
+        ],
+        [
+          7.441907419493829,
+          -0.8100552444140735
+        ],
+        [
+          7.521037343184047,
+          -0.8016884163795837
+        ],
+        [
+          7.600167266874266,
+          -0.7934272315045463
+        ],
+        [
+          7.696303025687341,
+          -0.7832236580381885
+        ],
+        [
+          7.7924387845004155,
+          -0.7724524595259001
+        ],
+        [
+          7.88857454331349,
+          -0.7612606062440915
+        ],
+        [
+          7.984710302126565,
+          -0.7501466450251799
+        ],
+        [
+          8.08084606093964,
+          -0.7396152307155313
+        ],
+        [
+          8.176981819752715,
+          -0.7299191453366315
+        ],
+        [
+          8.27311757856579,
+          -0.7208782067927562
+        ],
+        [
+          8.374791072592975,
+          -0.7115554426234859
+        ],
+        [
+          8.47646456662016,
+          -0.7020843308833365
+        ],
+        [
+          8.578138060647346,
+          -0.6923842320373226
+        ],
+        [
+          8.679811554674531,
+          -0.682468188780698
+        ],
+        [
+          8.781485048701716,
+          -0.672608069815436
+        ],
+        [
+          8.883158542728902,
+          -0.6631301107172156
+        ],
+        [
+          9.00524652036951,
+          -0.6524827957528924
+        ],
+        [
+          9.12733449801012,
+          -0.6428072908665631
+        ],
+        [
+          9.249422475650729,
+          -0.6337412101398807
+        ],
+        [
+          9.371510453291338,
+          -0.6245111109621615
+        ],
+        [
+          9.493598430931947,
+          -0.6144082032088816
+        ],
+        [
+          9.615686408572556,
+          -0.6033413347144057
+        ],
+        [
+          9.638495054883064,
+          -0.6011745233164374
+        ],
+        [
+          9.661303701193573,
+          -0.5990287582437742
+        ],
+        [
+          9.684112347504081,
+          -0.5969303521995053
+        ],
+        [
+          9.729729640125099,
+          -0.5929249755481862
+        ],
+        [
+          9.775346932746116,
+          -0.5891884440940531
+        ],
+        [
+          9.820964225367133,
+          -0.5857316806741361
+        ],
+        [
+          9.921906879777866,
+          -0.5788813576475973
+        ],
+        [
+          10.004312108890508,
+          -0.5739903006081111
+        ],
+        [
+          10.08671733800315,
+          -0.5692336436203372
+        ],
+        [
+          10.16912256711579,
+          -0.5643280656161213
+        ],
+        [
+          10.318508402311611,
+          -0.5546372738549208
+        ],
+        [
+          10.416310959001898,
+          -0.5475139258657844
+        ],
+        [
+          10.514113515692184,
+          -0.5400645487828025
+        ],
+        [
+          10.61191607238247,
+          -0.5326926681131162
+        ],
+        [
+          10.709718629072757,
+          -0.5258558014383002
+        ],
+        [
+          10.84073505366698,
+          -0.5178792994002726
+        ],
+        [
+          10.935791309767657,
+          -0.5128891128827542
+        ],
+        [
+          11.030847565868333,
+          -0.5082057650949633
+        ],
+        [
+          11.12590382196901,
+          -0.5034220387973091
+        ],
+        [
+          11.220960078069686,
+          -0.49821387748891877
+        ],
+        [
+          11.34293278943959,
+          -0.4907536106265799
+        ],
+        [
+          11.4367198655186,
+          -0.48452776146751264
+        ],
+        [
+          11.530506941597611,
+          -0.47823708345365673
+        ],
+        [
+          11.624294017676622,
+          -0.4722058002556273
+        ],
+        [
+          11.718081093755632,
+          -0.4666987786587642
+        ],
+        [
+          11.830682395509069,
+          -0.4608856563494676
+        ],
+        [
+          11.943283697262505,
+          -0.4557484044500699
+        ],
+        [
+          12.055884999015941,
+          -0.45088732318324265
+        ],
+        [
+          12.168486300769377,
+          -0.4458318539923046
+        ],
+        [
+          12.29994439393496,
+          -0.43930363378147336
+        ],
+        [
+          12.404633593778348,
+          -0.4335732511960859
+        ],
+        [
+          12.509322793621736,
+          -0.4275650405374738
+        ],
+        [
+          12.614011993465125,
+          -0.42158325481431486
+        ],
+        [
+          12.718701193308513,
+          -0.4159112952066065
+        ],
+        [
+          12.865684810686352,
+          -0.40880251646729715
+        ],
+        [
+          12.973565119592086,
+          -0.40423968653055176
+        ],
+        [
+          13.08144542849782,
+          -0.4000284056315314
+        ],
+        [
+          13.189325737403555,
+          -0.39591439396901285
+        ],
+        [
+          13.29720604630929,
+          -0.3916301406645704
+        ],
+        [
+          13.455915925693203,
+          -0.38477542577210855
+        ],
+        [
+          13.572668910835402,
+          -0.3792638435442387
+        ],
+        [
+          13.6894218959776,
+          -0.37354959117340014
+        ],
+        [
+          13.8061748811198,
+          -0.3678783538594522
+        ],
+        [
+          13.922927866261999,
+          -0.3625013259748676
+        ],
+        [
+          14.085961813353116,
+          -0.3557423661752991
+        ],
+        [
+          14.204687031875425,
+          -0.35138079938404226
+        ],
+        [
+          14.323412250397734,
+          -0.3473259214655261
+        ],
+        [
+          14.442137468920043,
+          -0.3433523421301412
+        ],
+        [
+          14.560862687442352,
+          -0.3392575848487122
+        ],
+        [
+          14.727812813776477,
+          -0.3330542322448661
+        ],
+        [
+          14.852763845864722,
+          -0.32805069157166283
+        ],
+        [
+          14.977714877952966,
+          -0.32287301989118344
+        ],
+        [
+          15.10266591004121,
+          -0.3177101471348806
+        ],
+        [
+          15.227616942129455,
+          -0.3127563532901492
+        ],
+        [
+          15.39474055277627,
+          -0.3066578383696949
+        ],
+        [
+          15.526750000917001,
+          -0.30231515126932135
+        ],
+        [
+          15.658759449057733,
+          -0.2982846668709808
+        ],
+        [
+          15.790768897198465,
+          -0.2944197722681525
+        ],
+        [
+          15.922778345339196,
+          -0.2905348151301573
+        ],
+        [
+          16.079671368014623,
+          -0.285726475965555
+        ],
+        [
+          16.23656439069005,
+          -0.28063484504797714
+        ],
+        [
+          16.393457413365475,
+          -0.27533626993540994
+        ],
+        [
+          16.5503504360409,
+          -0.2699759036105125
+        ],
+        [
+          16.72307251287968,
+          -0.2642253963765358
+        ],
+        [
+          16.895794589718456,
+          -0.2588128624346851
+        ],
+        [
+          17.068516666557233,
+          -0.25383874392989547
+        ],
+        [
+          17.24123874339601,
+          -0.24923277002021157
+        ],
+        [
+          17.413960820234788,
+          -0.24483105356773682
+        ],
+        [
+          17.60482627556807,
+          -0.2399971953150912
+        ],
+        [
+          17.79569173090135,
+          -0.23504363628386646
+        ],
+        [
+          17.98655718623463,
+          -0.2299601934145568
+        ],
+        [
+          18.17742264156791,
+          -0.2248331880857207
+        ],
+        [
+          18.368288096901193,
+          -0.21981446861119394
+        ],
+        [
+          18.559153552234473,
+          -0.21500703733439186
+        ],
+        [
+          18.750019007567754,
+          -0.21046590593598927
+        ],
+        [
+          18.940884462901035,
+          -0.2061920809773295
+        ],
+        [
+          19.160009857916293,
+          -0.20153987338856785
+        ],
+        [
+          19.37913525293155,
+          -0.19707948778826861
+        ],
+        [
+          19.59826064794681,
+          -0.19274829771729252
+        ],
+        [
+          19.817386042962067,
+          -0.18851781311125937
+        ],
+        [
+          20.036511437977325,
+          -0.18440757303470526
+        ],
+        [
+          20.343119545325326,
+          -0.17892422209107722
+        ],
+        [
+          20.649727652673327,
+          -0.17384800471343087
+        ],
+        [
+          20.95633576002133,
+          -0.16925798321260435
+        ],
+        [
+          21.26294386736933,
+          -0.1651898173517398
+        ],
+        [
+          21.56955197471733,
+          -0.1616436473667311
+        ],
+        [
+          21.876160082065333,
+          -0.15860063300009453
+        ],
+        [
+          22.182768189413334,
+          -0.1560354434795268
+        ],
+        [
+          22.489376296761336,
+          -0.15391710219325666
+        ],
+        [
+          22.837549744359293,
+          -0.15198459528826894
+        ],
+        [
+          23.18572319195725,
+          -0.15043647112298017
+        ],
+        [
+          23.53389663955521,
+          -0.149071405561255
+        ],
+        [
+          23.882070087153167,
+          -0.14759462490123482
+        ],
+        [
+          24.230243534751125,
+          -0.14561337048092676
+        ],
+        [
+          24.578416982349083,
+          -0.14262291406399688
+        ],
+        [
+          24.92659042994704,
+          -0.13797133446930457
+        ],
+        [
+          25.274763877545,
+          -0.13071613327226114
+        ],
+        [
+          25.544320922023445,
+          -0.12241731302054894
+        ],
+        [
+          25.81387796650189,
+          -0.11076019230147745
+        ],
+        [
+          25.885098654500275,
+          -0.1069821147903946
+        ],
+        [
+          25.88571428571429,
+          -0.10694804533356655
+        ],
+        [
+          25.891725275535915,
+          -0.10661310268676828
+        ],
+        [
+          25.89773626535754,
+          -0.10627580050535411
+        ],
+        [
+          25.90975824500079,
+          -0.10559597143755507
+        ],
+        [
+          25.921780224644042,
+          -0.10490656481739795
+        ],
+        [
+          25.933802204287293,
+          -0.10420749752240048
+        ],
+        [
+          26.05402200071982,
+          -0.09666917781693916
+        ],
+        [
+          26.174241797152344,
+          -0.08809496107110762
+        ],
+        [
+          26.29446159358487,
+          -0.07846369443417318
+        ],
+        [
+          26.414681390017396,
+          -0.06781967052093257
+        ],
+        [
+          26.59056092778596,
+          -0.05073502828161721
+        ],
+        [
+          26.76644046555452,
+          -0.0327208651710145
+        ],
+        [
+          26.942320003323083,
+          -0.015438517977992252
+        ],
+        [
+          27.118199541091645,
+          -0.001429713429779898
+        ],
+        [
+          27.294079078860207,
+          0.005871723483275885
+        ],
+        [
+          27.38571428571429,
+          0.005657824837037931
+        ],
+        [
+          27.397496400123647,
+          -11.816589726414403
+        ],
+        [
+          27.409278514533003,
+          -11.688656102745973
+        ],
+        [
+          27.43284274335172,
+          -11.438187190765266
+        ],
+        [
+          27.456406972170438,
+          -11.196628117276967
+        ],
+        [
+          27.479971200989155,
+          -10.963559447064519
+        ],
+        [
+          27.597382226258187,
+          -9.91624775967769
+        ],
+        [
+          27.71479325152722,
+          -9.028960502857284
+        ],
+        [
+          27.83220427679625,
+          -8.270125858397328
+        ],
+        [
+          27.949615302065283,
+          -7.615224848367215
+        ],
+        [
+          28.127223521019754,
+          -6.780355198592202
+        ],
+        [
+          28.304831739974226,
+          -6.090603918111706
+        ],
+        [
+          28.482439958928698,
+          -5.5105553571086805
+        ],
+        [
+          28.66004817788317,
+          -5.014444065830828
+        ],
+        [
+          28.83765639683764,
+          -4.583605497512278
+        ],
+        [
+          29.142165265211645,
+          -3.959155613618056
+        ],
+        [
+          29.44667413358565,
+          -3.4410760628744606
+        ],
+        [
+          29.751183001959653,
+          -3.0005227769373986
+        ],
+        [
+          30.055691870333657,
+          -2.6200576254949284
+        ],
+        [
+          30.36020073870766,
+          -2.2883625075887983
+        ],
+        [
+          30.664709607081665,
+          -1.997701008667428
+        ],
+        [
+          31.156066194366023,
+          -1.6015567786589633
+        ],
+        [
+          31.64742278165038,
+          -1.280564778064139
+        ],
+        [
+          32.138779368934735,
+          -1.0213948487038649
+        ],
+        [
+          32.63013595621909,
+          -0.8129955982862236
+        ],
+        [
+          33.12149254350345,
+          -0.6460480531086725
+        ],
+        [
+          33.61284913078781,
+          -0.5127362044481224
+        ],
+        [
+          34.104205718072166,
+          -0.40654715656918367
+        ],
+        [
+          34.59556230535652,
+          -0.3221201263823856
+        ],
+        [
+          35.20520071519727,
+          -0.24118685718362612
+        ],
+        [
+          35.81483912503802,
+          -0.18049943789899547
+        ],
+        [
+          36.42447753487877,
+          -0.13500695853670622
+        ],
+        [
+          37.03411594471952,
+          -0.10094311214542465
+        ],
+        [
+          37.61030939313683,
+          -0.0766646293994261
+        ],
+        [
+          38.186502841554145,
+          -0.0582149004516343
+        ],
+        [
+          38.76269628997146,
+          -0.04419641286482994
+        ],
+        [
+          39.33888973838877,
+          -0.03354714412870907
+        ],
+        [
+          40.470199282925094,
+          -0.019564459574949882
+        ],
+        [
+          41.601508827461416,
+          -0.01131176824243894
+        ],
+        [
+          42.73281837199774,
+          -0.00648979738725845
+        ],
+        [
+          43.86412791653406,
+          -0.0037381291984203207
+        ],
+        [
+          45.065546566682556,
+          -0.0020483554222743305
+        ],
+        [
+          46.26696521683105,
+          -0.001153239094565452
+        ],
+        [
+          47.46838386697955,
+          -0.0006703068085928223
+        ],
+        [
+          48.0644116487991,
+          -0.0005098334731909646
+        ],
+        [
+          48.66043943061865,
+          -0.0003817233859484165
+        ],
+        [
+          49.2564672124382,
+          -0.00028553557516794963
+        ],
+        [
+          49.85016027085198,
+          -0.00021394606897700416
+        ],
+        [
+          50.44385332926576,
+          -0.0001602885891400971
+        ],
+        [
+          51.037546387679534,
+          -0.00012006290408895002
+        ],
+        [
+          52.22602215013901,
+          -6.705303671504012e-05
+        ],
+        [
+          53.414497912598485,
+          -3.83718154599825e-05
+        ],
+        [
+          54.60297367505796,
+          -2.2249947690515682e-05
+        ],
+        [
+          55.78628196962012,
+          -1.2835773856284193e-05
+        ],
+        [
+          56.96959026418228,
+          -7.336288821929203e-06
+        ],
+        [
+          58.15289855874444,
+          -4.191225332081469e-06
+        ],
+        [
+          59.80914674127502,
+          -1.9900099710382586e-06
+        ],
+        [
+          61.465394923805604,
+          -1.1123524297336075e-06
+        ],
+        [
+          63.12164310633619,
+          -6.498156621222645e-07
+        ],
+        [
+          67.96806599954927,
+          -2.6700469045314305e-07
+        ],
+        [
+          69.17967172285253,
+          -2.547595825827071e-07
+        ],
+        [
+          71.60288316945908,
+          -1.7430802473932875e-07
+        ],
+        [
+          74.02609461606562,
+          -8.110185379980345e-08
+        ],
+        [
+          76.44930606267216,
+          -2.678729955616886e-08
+        ],
+        [
+          82.05653011294073,
+          1.3776632525481049e-08
+        ],
+        [
+          87.6637541632093,
+          1.133383899553697e-08
+        ],
+        [
+          93.27097821347787,
+          5.03906035065404e-09
+        ],
+        [
+          102.7701466845776,
+          -4.428053170579808e-09
+        ],
+        [
+          112.26931515567732,
+          -2.642809680546717e-09
+        ],
+        [
+          121.76848362677704,
+          7.272246620052396e-10
+        ],
+        [
+          131.26765209787678,
+          2.1411465827121e-09
+        ],
+        [
+          142.3439771582361,
+          2.802389559721948e-09
+        ],
+        [
+          153.42030221859542,
+          1.807431564130917e-09
+        ],
+        [
+          158.24761904761905,
+          1.552704336636912e-09
+        ],
+        [
+          158.36654057116988,
+          1.5569997688423185e-09
+        ],
+        [
+          158.4854620947207,
+          1.5609913871553248e-09
+        ],
+        [
+          159.74761904761905,
+          1.5899676730122409e-09
+        ],
+        [
+          159.74948515317416,
+          1.9494717569472367e-06
+        ],
+        [
+          159.75135125872927,
+          1.92372624192168e-06
+        ],
+        [
+          159.75508346983946,
+          1.873424166674881e-06
+        ],
+        [
+          159.75881568094965,
+          1.8250991717192095e-06
+        ],
+        [
+          159.76254789205984,
+          1.77864908377545e-06
+        ],
+        [
+          159.78008817979105,
+          1.5828507581030077e-06
+        ],
+        [
+          159.79762846752226,
+          1.4181523986095966e-06
+        ],
+        [
+          159.81516875525347,
+          1.278338153678254e-06
+        ],
+        [
+          159.83270904298467,
+          1.1586486371910889e-06
+        ],
+        [
+          159.85917311481012,
+          1.008201035881309e-06
+        ],
+        [
+          159.88563718663556,
+          8.860122023518543e-07
+        ],
+        [
+          159.912101258461,
+          7.854586467101607e-07
+        ],
+        [
+          159.93856533028645,
+          7.017121631882766e-07
+        ],
+        [
+          159.9650294021119,
+          6.312356267635249e-07
+        ],
+        [
+          160.01112136384918,
+          5.326147124109539e-07
+        ],
+        [
+          160.05721332558647,
+          4.5663364491023364e-07
+        ],
+        [
+          160.10330528732376,
+          3.9680966890764364e-07
+        ],
+        [
+          160.14939724906105,
+          3.4888125759867626e-07
+        ],
+        [
+          160.19548921079834,
+          3.098837190562763e-07
+        ],
+        [
+          160.24158117253563,
+          2.77710190792265e-07
+        ],
+        [
+          160.3166327641328,
+          2.3615905748261376e-07
+        ],
+        [
+          160.39168435572998,
+          2.0428528448160946e-07
+        ],
+        [
+          160.46673594732715,
+          1.7921771796349766e-07
+        ],
+        [
+          160.54178753892432,
+          1.5906775943107958e-07
+        ],
+        [
+          160.6168391305215,
+          1.4254934954518694e-07
+        ],
+        [
+          160.69189072211867,
+          1.2876735648401503e-07
+        ],
+        [
+          160.81292628958846,
+          1.1076075022985989e-07
+        ],
+        [
+          160.93396185705825,
+          9.646536995316022e-08
+        ],
+        [
+          161.05499742452804,
+          8.477811187282077e-08
+        ],
+        [
+          161.17603299199783,
+          7.498637594992551e-08
+        ],
+        [
+          161.29706855946762,
+          6.662050876554843e-08
+        ],
+        [
+          161.46985652170034,
+          5.654392788904162e-08
+        ],
+        [
+          161.64264448393305,
+          4.814938636218765e-08
+        ],
+        [
+          161.81543244616577,
+          4.105554273293713e-08
+        ],
+        [
+          161.9882204083985,
+          3.501083962927515e-08
+        ],
+        [
+          162.1610083706312,
+          2.983869386403419e-08
+        ],
+        [
+          162.38610275126362,
+          2.4192030895422708e-08
+        ],
+        [
+          162.61119713189603,
+          1.9570776341205053e-08
+        ],
+        [
+          162.83629151252845,
+          1.5794093783773988e-08
+        ],
+        [
+          163.06138589316086,
+          1.271603953441934e-08
+        ],
+        [
+          163.3001953672972,
+          1.0068756526515459e-08
+        ],
+        [
+          163.53900484143352,
+          7.952924399421914e-09
+        ],
+        [
+          163.77781431556986,
+          6.267438873023452e-09
+        ],
+        [
+          164.01699558831393,
+          4.9271088984257215e-09
+        ],
+        [
+          164.256176861058,
+          3.866304883900983e-09
+        ],
+        [
+          164.49535813380209,
+          3.0290288939218085e-09
+        ],
+        [
+          164.73455176863084,
+          2.369796080398847e-09
+        ],
+        [
+          165.96552936083825,
+          3.5794272235257965e-10
+        ],
+        [
+          167.19650695304566,
+          -1.7072178462241728e-10
+        ],
+        [
+          168.42748454525307,
+          -1.8169086407331953e-10
+        ],
+        [
+          172.0340398974043,
+          -1.77662616217847e-10
+        ],
+        [
+          175.64059524955556,
+          -3.5243196337427634e-11
+        ],
+        [
+          179.2471506017068,
+          1.734376691416499e-11
+        ],
+        [
+          196.48491242496618,
+          4.542608586121677e-11
+        ],
+        [
+          213.72267424822556,
+          2.292235083104901e-11
+        ],
+        [
+          230.96043607148493,
+          1.77165299901986e-11
+        ],
+        [
+          256.216460721343,
+          4.214143856250839e-12
+        ],
+        [
+          281.4724853712011,
+          -6.703028556394926e-13
+        ],
+        [
+          298.21839993404154,
+          3.646402826513555e-12
+        ]
+      ],
+      "title": "Ay (M/S\u00b2) x Time (S)",
+      "inputs": [
+        "Time (s)"
+      ],
+      "outputs": [
+        "Ay (m/s\u00b2)"
+      ],
+      "interpolation": "spline",
+      "extrapolation": "zero",
+      "signature": {
+        "module": "rocketpy.mathutils.function",
+        "name": "Function",
+        "hash": 8532846655850
+      }
+    },
+    "az": {
+      "source": [
+        [
+          0.0,
+          0.0
+        ],
+        [
+          0.00140955829402094,
+          0.0
+        ],
+        [
+          0.00281911658804188,
+          0.0
+        ],
+        [
+          0.00563823317608376,
+          0.0
+        ],
+        [
+          0.00845734976412564,
+          0.0
+        ],
+        [
+          0.01127646635216752,
+          0.0
+        ],
+        [
+          0.039467632232586314,
+          0.0
+        ],
+        [
+          0.04085528032029989,
+          0.0
+        ],
+        [
+          0.04224292840801347,
+          0.0
+        ],
+        [
+          0.04501822458344063,
+          0.0
+        ],
+        [
+          0.047793520758867794,
+          0.0
+        ],
+        [
+          0.050568816934294956,
+          0.0
+        ],
+        [
+          0.051535065794208836,
+          0.0
+        ],
+        [
+          0.052501314654122715,
+          0.0
+        ],
+        [
+          0.05443381237395048,
+          0.0
+        ],
+        [
+          0.056366310093778245,
+          0.0
+        ],
+        [
+          0.05829880781360601,
+          1.9507039375415107
+        ],
+        [
+          0.06066778422864502,
+          6.602937320941642
+        ],
+        [
+          0.06303676064368403,
+          11.255470729569414
+        ],
+        [
+          0.06540573705872305,
+          15.908430214480234
+        ],
+        [
+          0.08909550120911316,
+          62.47202030728787
+        ],
+        [
+          0.09280001741983737,
+          70.78689022640145
+        ],
+        [
+          0.09574786203637055,
+          80.36704381192787
+        ],
+        [
+          0.09869570665290373,
+          89.95093683772592
+        ],
+        [
+          0.10099207719695144,
+          94.40410211646979
+        ],
+        [
+          0.10328844774099916,
+          94.89359985611276
+        ],
+        [
+          0.10558481828504687,
+          95.38325600349773
+        ],
+        [
+          0.1101775593731423,
+          96.36322116670303
+        ],
+        [
+          0.11477030046123773,
+          97.34392278889217
+        ],
+        [
+          0.11936304154933317,
+          98.3250188381277
+        ],
+        [
+          0.1312706469438581,
+          100.87135954655965
+        ],
+        [
+          0.14317825233838302,
+          103.42204387285967
+        ],
+        [
+          0.1499601229088181,
+          104.87684758027015
+        ],
+        [
+          0.1542012180187087,
+          103.16015727321314
+        ],
+        [
+          0.1584423131285993,
+          101.41726798896714
+        ],
+        [
+          0.1626834082384899,
+          99.67300641335338
+        ],
+        [
+          0.1711655984582711,
+          96.1807794188278
+        ],
+        [
+          0.17964778867805228,
+          92.68389528121706
+        ],
+        [
+          0.18812997889783348,
+          89.18280772996458
+        ],
+        [
+          0.19446537171097383,
+          86.5644414122857
+        ],
+        [
+          0.20080076452411422,
+          84.29984961770228
+        ],
+        [
+          0.20566109450366143,
+          84.4465548845106
+        ],
+        [
+          0.21052142448320865,
+          84.59329962447772
+        ],
+        [
+          0.21538175446275587,
+          84.74008387269546
+        ],
+        [
+          0.22510241442185028,
+          85.03390479366398
+        ],
+        [
+          0.23482307438094469,
+          85.32787357773563
+        ],
+        [
+          0.2445437343400391,
+          85.62189705722396
+        ],
+        [
+          0.2542643942991335,
+          85.91607497833687
+        ],
+        [
+          0.3514709938900776,
+          88.8684441217749
+        ],
+        [
+          0.36324670161934375,
+          89.227452826031
+        ],
+        [
+          0.3693547037882063,
+          89.32122825422131
+        ],
+        [
+          0.3754627059570688,
+          89.50752778434516
+        ],
+        [
+          0.3876787102947939,
+          89.88025646240835
+        ],
+        [
+          0.39989471463251897,
+          90.25368342074415
+        ],
+        [
+          0.41211071897024404,
+          90.62722863624688
+        ],
+        [
+          0.47147904178591876,
+          92.44595824346042
+        ],
+        [
+          0.5078212847273655,
+          93.43415267616096
+        ],
+        [
+          0.5343387025617514,
+          93.78241931013036
+        ],
+        [
+          0.5608561203961373,
+          94.13013564660106
+        ],
+        [
+          0.5873735382305232,
+          94.47726516411817
+        ],
+        [
+          0.6404083738992948,
+          95.16980772812514
+        ],
+        [
+          0.6934432095680665,
+          95.85954779627711
+        ],
+        [
+          0.7464780452368381,
+          96.5462353072396
+        ],
+        [
+          0.7995128809056098,
+          97.22957362927733
+        ],
+        [
+          0.813164227469089,
+          97.40475905814678
+        ],
+        [
+          0.8268155740325682,
+          97.57993523526785
+        ],
+        [
+          0.8404669205960474,
+          97.75475812597573
+        ],
+        [
+          0.8775732859954444,
+          98.22853978906025
+        ],
+        [
+          0.9146796513948413,
+          98.70019344010989
+        ],
+        [
+          0.9517860167942382,
+          99.17006416516269
+        ],
+        [
+          0.9674325642455079,
+          99.36733897727578
+        ],
+        [
+          0.9990075872778321,
+          99.76396386335202
+        ],
+        [
+          1.0183793592598076,
+          99.77769482992277
+        ],
+        [
+          1.037751131241783,
+          99.77006820375577
+        ],
+        [
+          1.0571229032237586,
+          99.76114067485496
+        ],
+        [
+          1.0878788324799102,
+          99.74434266182968
+        ],
+        [
+          1.118634761736062,
+          99.72434339311243
+        ],
+        [
+          1.1439443303803107,
+          99.70539517595344
+        ],
+        [
+          1.1692538990245596,
+          99.68438842981588
+        ],
+        [
+          1.1945634676688084,
+          99.66121499687394
+        ],
+        [
+          1.2316568052102488,
+          99.62361425367317
+        ],
+        [
+          1.2687501427516892,
+          99.5817819405817
+        ],
+        [
+          1.3058434802931296,
+          99.53595253838493
+        ],
+        [
+          1.34293681783457,
+          99.48628855686728
+        ],
+        [
+          1.4021386812930872,
+          99.40002504734387
+        ],
+        [
+          1.447031703480718,
+          99.32927871712144
+        ],
+        [
+          1.491924725668349,
+          99.25432118726563
+        ],
+        [
+          1.5260726318617992,
+          99.00642062471933
+        ],
+        [
+          1.5602205380552494,
+          98.69127938638545
+        ],
+        [
+          1.5943684442486996,
+          98.37271265773238
+        ],
+        [
+          1.6285163504421498,
+          98.05037442932115
+        ],
+        [
+          1.6626642566356,
+          97.72445086900883
+        ],
+        [
+          1.6968121628290502,
+          97.39406463109621
+        ],
+        [
+          1.7309600690225004,
+          97.059223666366
+        ],
+        [
+          1.770308643380365,
+          96.66720908341073
+        ],
+        [
+          1.8096572177382295,
+          96.26787279009211
+        ],
+        [
+          1.849005792096094,
+          95.86028836018338
+        ],
+        [
+          1.8883543664539586,
+          95.44412301257137
+        ],
+        [
+          1.9277029408118231,
+          95.01846995986648
+        ],
+        [
+          1.9670515151696877,
+          94.58063662387444
+        ],
+        [
+          2.006400089527552,
+          94.10481879236194
+        ],
+        [
+          2.0457486638854165,
+          93.46525967346972
+        ],
+        [
+          2.085097238243281,
+          92.81626953880368
+        ],
+        [
+          2.124445812601145,
+          92.15902027395221
+        ],
+        [
+          2.1637943869590095,
+          91.49407507931926
+        ],
+        [
+          2.203142961316874,
+          90.82105418198438
+        ],
+        [
+          2.242491535674738,
+          90.14158710744815
+        ],
+        [
+          2.2818401100326025,
+          89.45638708903287
+        ],
+        [
+          2.3211886843904668,
+          88.7653536900372
+        ],
+        [
+          2.360537258748331,
+          88.06784545643791
+        ],
+        [
+          2.3998858331061954,
+          87.36205455692324
+        ],
+        [
+          2.4392344074640597,
+          86.648371097526
+        ],
+        [
+          2.478582981821924,
+          85.92385949927701
+        ],
+        [
+          2.5179315561797884,
+          85.32104734845784
+        ],
+        [
+          2.5572801305376527,
+          84.91484282749155
+        ],
+        [
+          2.596628704895517,
+          84.51906814589714
+        ],
+        [
+          2.6359772792533813,
+          84.1185761025673
+        ],
+        [
+          2.6753258536112456,
+          83.71358829183451
+        ],
+        [
+          2.71467442796911,
+          83.30553737728277
+        ],
+        [
+          2.746682540487563,
+          82.97193706809196
+        ],
+        [
+          2.778690653006016,
+          82.6380692283649
+        ],
+        [
+          2.810698765524469,
+          82.30444008560778
+        ],
+        [
+          2.842706878042922,
+          81.97054008374234
+        ],
+        [
+          2.874714990561375,
+          81.63590913580798
+        ],
+        [
+          2.9109277644238576,
+          81.03906741328726
+        ],
+        [
+          2.940339896156497,
+          80.03647428252219
+        ],
+        [
+          2.9638563968017557,
+          79.18979800321958
+        ],
+        [
+          2.9873728974470146,
+          78.33979434162046
+        ],
+        [
+          2.991532758872659,
+          78.18894335143574
+        ],
+        [
+          2.995692620298303,
+          78.03794707605155
+        ],
+        [
+          2.999852481723947,
+          77.8868411373885
+        ],
+        [
+          3.0011406359017885,
+          77.7363993996644
+        ],
+        [
+          3.00242879007963,
+          77.4380635797995
+        ],
+        [
+          3.0050050984353125,
+          76.84138206035679
+        ],
+        [
+          3.007581406790995,
+          76.24466685631253
+        ],
+        [
+          3.0312400452524226,
+          70.76182114336396
+        ],
+        [
+          3.05489868371385,
+          65.27740594340212
+        ],
+        [
+          3.0785573221752776,
+          59.79201988901943
+        ],
+        [
+          3.102215960636705,
+          54.30864516038753
+        ],
+        [
+          3.120664542586555,
+          50.03387256045374
+        ],
+        [
+          3.139113124536405,
+          45.76342317618428
+        ],
+        [
+          3.1575617064862547,
+          41.49567603121985
+        ],
+        [
+          3.194458870385954,
+          32.97515218837266
+        ],
+        [
+          3.2233916577517485,
+          26.309684335605645
+        ],
+        [
+          3.252324445117543,
+          19.66119620210699
+        ],
+        [
+          3.2812572324833376,
+          13.031900982407675
+        ],
+        [
+          3.2864042093564865,
+          11.85472698363961
+        ],
+        [
+          3.2915511862296354,
+          10.678277051459009
+        ],
+        [
+          3.2966981631027843,
+          9.502438345325995
+        ],
+        [
+          3.3044731976480057,
+          8.182108012757533
+        ],
+        [
+          3.312248232193227,
+          7.324390047098534
+        ],
+        [
+          3.3200232667384486,
+          6.467525947616705
+        ],
+        [
+          3.3299608976332786,
+          5.373523871044361
+        ],
+        [
+          3.3398985285281086,
+          4.280813465589314
+        ],
+        [
+          3.3498361594229387,
+          3.189375351096533
+        ],
+        [
+          3.3684063767347974,
+          1.1532895550422266
+        ],
+        [
+          3.386976594046656,
+          -0.8781921362416037
+        ],
+        [
+          3.4020328166662903,
+          -2.4268036308104652
+        ],
+        [
+          3.4113057466050263,
+          -2.81549050268701
+        ],
+        [
+          3.4205786765437622,
+          -3.2036862733418117
+        ],
+        [
+          3.429851606482498,
+          -3.591458974580654
+        ],
+        [
+          3.4462125806335115,
+          -4.274670553912246
+        ],
+        [
+          3.462573554784525,
+          -4.956650763623376
+        ],
+        [
+          3.4789345289355382,
+          -5.637391639160202
+        ],
+        [
+          3.5099101021393686,
+          -6.922748348274781
+        ],
+        [
+          3.5343946919875657,
+          -7.935386798174795
+        ],
+        [
+          3.558879281835763,
+          -8.944904093866365
+        ],
+        [
+          3.58336387168396,
+          -9.951173302932608
+        ],
+        [
+          3.6154318916074843,
+          -11.264030450392994
+        ],
+        [
+          3.6474999115310087,
+          -12.570864023442988
+        ],
+        [
+          3.679567931454533,
+          -13.871425352091636
+        ],
+        [
+          3.7116359513780575,
+          -15.165818810908979
+        ],
+        [
+          3.750677226849746,
+          -16.733289300447748
+        ],
+        [
+          3.789718502321435,
+          -18.292228516303187
+        ],
+        [
+          3.8287597777931235,
+          -19.842903796471532
+        ],
+        [
+          3.867801053264812,
+          -21.38623059590828
+        ],
+        [
+          3.906842328736501,
+          -22.65615234302087
+        ],
+        [
+          3.9127975041938576,
+          -22.635034353615595
+        ],
+        [
+          3.9187526796512144,
+          -22.61395683213998
+        ],
+        [
+          3.9247078551085712,
+          -22.592931548553764
+        ],
+        [
+          3.9366182060232844,
+          -22.55104942824503
+        ],
+        [
+          3.9485285569379975,
+          -22.509385850078704
+        ],
+        [
+          3.9604389078527107,
+          -22.467933718682694
+        ],
+        [
+          3.9894733064604,
+          -22.367712302169586
+        ],
+        [
+          4.018507705068089,
+          -22.268551983274993
+        ],
+        [
+          4.047542103675778,
+          -22.170304672349197
+        ],
+        [
+          4.0765765022834675,
+          -22.07284520987589
+        ],
+        [
+          4.119155795005119,
+          -21.931194955637284
+        ],
+        [
+          4.16173508772677,
+          -21.790984328552973
+        ],
+        [
+          4.1691207712068685,
+          -21.766807513243883
+        ],
+        [
+          4.176506454686967,
+          -21.742677574261453
+        ],
+        [
+          4.1838921381670655,
+          -21.718596198871957
+        ],
+        [
+          4.1986635051272625,
+          -21.67058761957822
+        ],
+        [
+          4.2134348720874595,
+          -21.622792753131932
+        ],
+        [
+          4.2282062390476565,
+          -21.575223558039255
+        ],
+        [
+          4.264323210631898,
+          -21.45992862363209
+        ],
+        [
+          4.300440182216139,
+          -21.346190789727295
+        ],
+        [
+          4.33655715380038,
+          -21.23411430781533
+        ],
+        [
+          4.372674125384622,
+          -21.123723266921925
+        ],
+        [
+          4.416044435312633,
+          -20.993315774461518
+        ],
+        [
+          4.459414745240645,
+          -20.865050004391275
+        ],
+        [
+          4.502785055168657,
+          -20.73861274653802
+        ],
+        [
+          4.546155365096668,
+          -20.613713506804196
+        ],
+        [
+          4.58952567502468,
+          -20.493804449271607
+        ],
+        [
+          4.632895984952691,
+          -20.41285976516532
+        ],
+        [
+          4.676266294880703,
+          -20.332328214992813
+        ],
+        [
+          4.719636604808715,
+          -20.252387486048715
+        ],
+        [
+          4.768224902129621,
+          -20.163771298219668
+        ],
+        [
+          4.816813199450527,
+          -20.076329898145257
+        ],
+        [
+          4.865401496771433,
+          -19.990088899672724
+        ],
+        [
+          4.913989794092339,
+          -19.904919893736118
+        ],
+        [
+          4.962578091413246,
+          -19.820603350350797
+        ],
+        [
+          5.016300880486902,
+          -19.728104544124918
+        ],
+        [
+          5.070023669560559,
+          -19.63617931127526
+        ],
+        [
+          5.123746458634216,
+          -19.544781322559537
+        ],
+        [
+          5.177469247707872,
+          -19.454099381103376
+        ],
+        [
+          5.219601255563254,
+          -19.383554417882
+        ],
+        [
+          5.261733263418636,
+          -19.313645517135424
+        ],
+        [
+          5.3038652712740175,
+          -19.244498951340017
+        ],
+        [
+          5.345997279129399,
+          -19.176177463202098
+        ],
+        [
+          5.388129286984781,
+          -19.10865032693212
+        ],
+        [
+          5.438594166103664,
+          -19.028642505211014
+        ],
+        [
+          5.489059045222548,
+          -18.94932987804599
+        ],
+        [
+          5.539523924341431,
+          -18.87048037761535
+        ],
+        [
+          5.589988803460314,
+          -18.792002385720746
+        ],
+        [
+          5.6404536825791975,
+          -18.71396766922351
+        ],
+        [
+          5.690918561698081,
+          -18.63654717417636
+        ],
+        [
+          5.741383440816964,
+          -18.559909722277112
+        ],
+        [
+          5.7918483199358475,
+          -18.48415815655307
+        ],
+        [
+          5.842313199054731,
+          -18.40931156473715
+        ],
+        [
+          5.900175444574162,
+          -18.32454790671042
+        ],
+        [
+          5.958037690093594,
+          -18.240772589085367
+        ],
+        [
+          6.015899935613025,
+          -18.157823029130743
+        ],
+        [
+          6.073762181132457,
+          -18.075574547810433
+        ],
+        [
+          6.1316244266518884,
+          -17.993977047833553
+        ],
+        [
+          6.18948667217132,
+          -17.913063936602654
+        ],
+        [
+          6.2473489176907515,
+          -17.83224973372222
+        ],
+        [
+          6.305211163210183,
+          -17.752098656989222
+        ],
+        [
+          6.374869724777001,
+          -17.65688561788053
+        ],
+        [
+          6.44452828634382,
+          -17.552016638176553
+        ],
+        [
+          6.514186847910638,
+          -17.44362714850407
+        ],
+        [
+          6.583845409477457,
+          -17.33693911750897
+        ],
+        [
+          6.653503971044275,
+          -17.23236525573639
+        ],
+        [
+          6.723162532611093,
+          -17.129318263198364
+        ],
+        [
+          6.792821094177912,
+          -17.027706148334687
+        ],
+        [
+          6.856149583247434,
+          -16.93714432614366
+        ],
+        [
+          6.919478072316956,
+          -16.847867209058556
+        ],
+        [
+          6.982806561386478,
+          -16.75990172214447
+        ],
+        [
+          7.046135050456,
+          -16.673612773956012
+        ],
+        [
+          7.109463539525522,
+          -16.588656861982823
+        ],
+        [
+          7.172792028595044,
+          -16.504885145090707
+        ],
+        [
+          7.236120517664566,
+          -16.422460345469215
+        ],
+        [
+          7.299449006734088,
+          -16.341256658366614
+        ],
+        [
+          7.36277749580361,
+          -16.261057967708613
+        ],
+        [
+          7.441907419493829,
+          -16.162422992022353
+        ],
+        [
+          7.521037343184047,
+          -16.0655942254806
+        ],
+        [
+          7.600167266874266,
+          -15.970330951219037
+        ],
+        [
+          7.696303025687341,
+          -15.857079262754375
+        ],
+        [
+          7.7924387845004155,
+          -15.74621194384047
+        ],
+        [
+          7.88857454331349,
+          -15.63778816162273
+        ],
+        [
+          7.984710302126565,
+          -15.531633950564817
+        ],
+        [
+          8.08084606093964,
+          -15.42754319092405
+        ],
+        [
+          8.176981819752715,
+          -15.32559368142736
+        ],
+        [
+          8.27311757856579,
+          -15.225476439828919
+        ],
+        [
+          8.374791072592975,
+          -15.121921824054184
+        ],
+        [
+          8.47646456662016,
+          -15.020421251716883
+        ],
+        [
+          8.578138060647346,
+          -14.921694493639599
+        ],
+        [
+          8.679811554674531,
+          -14.825118704063923
+        ],
+        [
+          8.781485048701716,
+          -14.730531991675583
+        ],
+        [
+          8.883158542728902,
+          -14.637820194008624
+        ],
+        [
+          9.00524652036951,
+          -14.528819982668969
+        ],
+        [
+          9.12733449801012,
+          -14.42231629282838
+        ],
+        [
+          9.249422475650729,
+          -14.318221499523538
+        ],
+        [
+          9.371510453291338,
+          -14.21658502521743
+        ],
+        [
+          9.493598430931947,
+          -14.117425903818233
+        ],
+        [
+          9.615686408572556,
+          -14.020677695904084
+        ],
+        [
+          9.638495054883064,
+          -14.002851524912382
+        ],
+        [
+          9.661303701193573,
+          -13.985095375943855
+        ],
+        [
+          9.684112347504081,
+          -13.967433077237395
+        ],
+        [
+          9.729729640125099,
+          -13.93232551455435
+        ],
+        [
+          9.775346932746116,
+          -13.897464276718129
+        ],
+        [
+          9.820964225367133,
+          -13.862844831949456
+        ],
+        [
+          9.921906879777866,
+          -13.787272057181209
+        ],
+        [
+          10.004312108890508,
+          -13.72766635875465
+        ],
+        [
+          10.08671733800315,
+          -13.668867505694774
+        ],
+        [
+          10.16912256711579,
+          -13.61095130043568
+        ],
+        [
+          10.318508402311611,
+          -13.508649376759724
+        ],
+        [
+          10.416310959001898,
+          -13.443169039351389
+        ],
+        [
+          10.514113515692184,
+          -13.378943093404041
+        ],
+        [
+          10.61191607238247,
+          -13.315737534978375
+        ],
+        [
+          10.709718629072757,
+          -13.253545407208643
+        ],
+        [
+          10.84073505366698,
+          -13.171698728424499
+        ],
+        [
+          10.935791309767657,
+          -13.113312135034148
+        ],
+        [
+          11.030847565868333,
+          -13.05587221856917
+        ],
+        [
+          11.12590382196901,
+          -12.999318127624873
+        ],
+        [
+          11.220960078069686,
+          -12.943752777208287
+        ],
+        [
+          11.34293278943959,
+          -12.873875580742265
+        ],
+        [
+          11.4367198655186,
+          -12.821149635149514
+        ],
+        [
+          11.530506941597611,
+          -12.769326198455731
+        ],
+        [
+          11.624294017676622,
+          -12.718230535115822
+        ],
+        [
+          11.718081093755632,
+          -12.66783578155655
+        ],
+        [
+          11.830682395509069,
+          -12.608275183918424
+        ],
+        [
+          11.943283697262505,
+          -12.549647938515239
+        ],
+        [
+          12.055884999015941,
+          -12.492098835565042
+        ],
+        [
+          12.168486300769377,
+          -12.43559407013911
+        ],
+        [
+          12.29994439393496,
+          -12.371036931800134
+        ],
+        [
+          12.404633593778348,
+          -12.320691244343848
+        ],
+        [
+          12.509322793621736,
+          -12.271213036989487
+        ],
+        [
+          12.614011993465125,
+          -12.222612461776716
+        ],
+        [
+          12.718701193308513,
+          -12.17473940883887
+        ],
+        [
+          12.865684810686352,
+          -12.10874935492524
+        ],
+        [
+          12.973565119592086,
+          -12.061170710222033
+        ],
+        [
+          13.08144542849782,
+          -12.014332215127487
+        ],
+        [
+          13.189325737403555,
+          -11.968294993302775
+        ],
+        [
+          13.29720604630929,
+          -11.923032160324459
+        ],
+        [
+          13.455915925693203,
+          -11.85796500275425
+        ],
+        [
+          13.572668910835402,
+          -11.811187298318856
+        ],
+        [
+          13.6894218959776,
+          -11.76532512814361
+        ],
+        [
+          13.8061748811198,
+          -11.720285141291367
+        ],
+        [
+          13.922927866261999,
+          -11.676001452143622
+        ],
+        [
+          14.085961813353116,
+          -11.615394592777097
+        ],
+        [
+          14.204687031875425,
+          -11.57209504846515
+        ],
+        [
+          14.323412250397734,
+          -11.529556589863661
+        ],
+        [
+          14.442137468920043,
+          -11.487748918149427
+        ],
+        [
+          14.560862687442352,
+          -11.446753212165946
+        ],
+        [
+          14.727812813776477,
+          -11.390429043988012
+        ],
+        [
+          14.852763845864722,
+          -11.349310406115308
+        ],
+        [
+          14.977714877952966,
+          -11.30900950916874
+        ],
+        [
+          15.10266591004121,
+          -11.269484798302816
+        ],
+        [
+          15.227616942129455,
+          -11.230694977230257
+        ],
+        [
+          15.39474055277627,
+          -11.179856144652945
+        ],
+        [
+          15.526750000917001,
+          -11.140540162216588
+        ],
+        [
+          15.658759449057733,
+          -11.10193322566944
+        ],
+        [
+          15.790768897198465,
+          -11.064102868757585
+        ],
+        [
+          15.922778345339196,
+          -11.027017180031608
+        ],
+        [
+          16.079671368014623,
+          -10.983987747025417
+        ],
+        [
+          16.23656439069005,
+          -10.942040867837813
+        ],
+        [
+          16.393457413365475,
+          -10.901190586020089
+        ],
+        [
+          16.5503504360409,
+          -10.861330649751453
+        ],
+        [
+          16.72307251287968,
+          -10.818579272831476
+        ],
+        [
+          16.895794589718456,
+          -10.77688667257855
+        ],
+        [
+          17.068516666557233,
+          -10.736240903222349
+        ],
+        [
+          17.24123874339601,
+          -10.696599290889404
+        ],
+        [
+          17.413960820234788,
+          -10.657992086888953
+        ],
+        [
+          17.60482627556807,
+          -10.61655223868644
+        ],
+        [
+          17.79569173090135,
+          -10.576392423410383
+        ],
+        [
+          17.98655718623463,
+          -10.537526182054643
+        ],
+        [
+          18.17742264156791,
+          -10.499886576448374
+        ],
+        [
+          18.368288096901193,
+          -10.463457029261866
+        ],
+        [
+          18.559153552234473,
+          -10.428118042278967
+        ],
+        [
+          18.750019007567754,
+          -10.393813225498194
+        ],
+        [
+          18.940884462901035,
+          -10.360544162384567
+        ],
+        [
+          19.160009857916293,
+          -10.32357633305923
+        ],
+        [
+          19.37913525293155,
+          -10.287926038411365
+        ],
+        [
+          19.59826064794681,
+          -10.253584873024899
+        ],
+        [
+          19.817386042962067,
+          -10.220510079411115
+        ],
+        [
+          20.036511437977325,
+          -10.188674839499333
+        ],
+        [
+          20.343119545325326,
+          -10.146122533796618
+        ],
+        [
+          20.649727652673327,
+          -10.10576593084989
+        ],
+        [
+          20.95633576002133,
+          -10.067469690574582
+        ],
+        [
+          21.26294386736933,
+          -10.031104876611192
+        ],
+        [
+          21.56955197471733,
+          -9.996546071617244
+        ],
+        [
+          21.876160082065333,
+          -9.96366315229984
+        ],
+        [
+          22.182768189413334,
+          -9.932314126065343
+        ],
+        [
+          22.489376296761336,
+          -9.902339659141438
+        ],
+        [
+          22.837549744359293,
+          -9.869726480320534
+        ],
+        [
+          23.18572319195725,
+          -9.838342107559203
+        ],
+        [
+          23.53389663955521,
+          -9.807859614181767
+        ],
+        [
+          23.882070087153167,
+          -9.777925455985436
+        ],
+        [
+          24.230243534751125,
+          -9.748148515598873
+        ],
+        [
+          24.578416982349083,
+          -9.71806949186182
+        ],
+        [
+          24.92659042994704,
+          -9.687149703983133
+        ],
+        [
+          25.274763877545,
+          -9.65483345665647
+        ],
+        [
+          25.544320922023445,
+          -9.62870590788634
+        ],
+        [
+          25.81387796650189,
+          -9.602011051298286
+        ],
+        [
+          25.885098654500275,
+          -9.595001995686395
+        ],
+        [
+          25.88571428571429,
+          -9.59494172002324
+        ],
+        [
+          25.891725275535915,
+          -9.59435514545551
+        ],
+        [
+          25.89773626535754,
+          -9.593769213017184
+        ],
+        [
+          25.90975824500079,
+          -9.592596257088584
+        ],
+        [
+          25.921780224644042,
+          -9.591426166391104
+        ],
+        [
+          25.933802204287293,
+          -9.590259167766675
+        ],
+        [
+          26.05402200071982,
+          -9.578813695637526
+        ],
+        [
+          26.174241797152344,
+          -9.567979204071065
+        ],
+        [
+          26.29446159358487,
+          -9.558102614601513
+        ],
+        [
+          26.414681390017396,
+          -9.549606284160431
+        ],
+        [
+          26.59056092778596,
+          -9.54070274892311
+        ],
+        [
+          26.76644046555452,
+          -9.537559422755201
+        ],
+        [
+          26.942320003323083,
+          -9.541986509841694
+        ],
+        [
+          27.118199541091645,
+          -9.555576039884555
+        ],
+        [
+          27.294079078860207,
+          -9.57930929922153
+        ],
+        [
+          27.38571428571429,
+          -9.595725090789726
+        ],
+        [
+          27.397496400123647,
+          -1.3685288573793466
+        ],
+        [
+          27.409278514533003,
+          -1.393220319983848
+        ],
+        [
+          27.43284274335172,
+          -1.441256418059099
+        ],
+        [
+          27.456406972170438,
+          -1.4867276816907937
+        ],
+        [
+          27.479971200989155,
+          -1.5297411049931315
+        ],
+        [
+          27.597382226258187,
+          -1.7105469507599993
+        ],
+        [
+          27.71479325152722,
+          -1.8434785815179218
+        ],
+        [
+          27.83220427679625,
+          -1.9367972238989286
+        ],
+        [
+          27.949615302065283,
+          -1.997143070264458
+        ],
+        [
+          28.127223521019754,
+          -2.0376645691444946
+        ],
+        [
+          28.304831739974226,
+          -2.029808695643268
+        ],
+        [
+          28.482439958928698,
+          -1.9851836161158811
+        ],
+        [
+          28.66004817788317,
+          -1.9132497881360881
+        ],
+        [
+          28.83765639683764,
+          -1.8216082004622562
+        ],
+        [
+          29.142165265211645,
+          -1.6360062281910404
+        ],
+        [
+          29.44667413358565,
+          -1.4342113312295002
+        ],
+        [
+          29.751183001959653,
+          -1.2329782345721751
+        ],
+        [
+          30.055691870333657,
+          -1.0426895875501436
+        ],
+        [
+          30.36020073870766,
+          -0.8694356378245875
+        ],
+        [
+          30.664709607081665,
+          -0.7161922436407293
+        ],
+        [
+          31.156066194366023,
+          -0.5121396623164539
+        ],
+        [
+          31.64742278165038,
+          -0.3572223997317642
+        ],
+        [
+          32.138779368934735,
+          -0.24317437532774028
+        ],
+        [
+          32.63013595621909,
+          -0.16119661442462221
+        ],
+        [
+          33.12149254350345,
+          -0.1033686263260183
+        ],
+        [
+          33.61284913078781,
+          -0.06312101119888278
+        ],
+        [
+          34.104205718072166,
+          -0.03541510614008534
+        ],
+        [
+          34.59556230535652,
+          -0.016525063492663222
+        ],
+        [
+          35.20520071519727,
+          -0.001387027618406923
+        ],
+        [
+          35.81483912503802,
+          0.00788032767770167
+        ],
+        [
+          36.42447753487877,
+          0.013569958579228578
+        ],
+        [
+          37.03411594471952,
+          0.016966632657149948
+        ],
+        [
+          37.61030939313683,
+          0.01886754168115393
+        ],
+        [
+          38.186502841554145,
+          0.020012728073127435
+        ],
+        [
+          38.76269628997146,
+          0.020700452065260874
+        ],
+        [
+          39.33888973838877,
+          0.02110282504836297
+        ],
+        [
+          40.470199282925094,
+          0.021466861146634618
+        ],
+        [
+          41.601508827461416,
+          0.02165709583253339
+        ],
+        [
+          42.73281837199774,
+          0.02169196867822398
+        ],
+        [
+          43.86412791653406,
+          0.021539783202434486
+        ],
+        [
+          45.065546566682556,
+          0.021378997341353626
+        ],
+        [
+          46.26696521683105,
+          0.021312924839577446
+        ],
+        [
+          47.46838386697955,
+          0.02130272665027548
+        ],
+        [
+          48.0644116487991,
+          0.021281984503458983
+        ],
+        [
+          48.66043943061865,
+          0.02124058106795641
+        ],
+        [
+          49.2564672124382,
+          0.021200621061327023
+        ],
+        [
+          49.85016027085198,
+          0.02116565195629491
+        ],
+        [
+          50.44385332926576,
+          0.02113229846936662
+        ],
+        [
+          51.037546387679534,
+          0.02109911442208257
+        ],
+        [
+          52.22602215013901,
+          0.021033138583911117
+        ],
+        [
+          53.414497912598485,
+          0.02096803832494905
+        ],
+        [
+          54.60297367505796,
+          0.020903655127517056
+        ],
+        [
+          55.78628196962012,
+          0.020839838479285104
+        ],
+        [
+          56.96959026418228,
+          0.020776088122394308
+        ],
+        [
+          58.15289855874444,
+          0.0207125213537631
+        ],
+        [
+          59.80914674127502,
+          0.020624286850277177
+        ],
+        [
+          61.465394923805604,
+          0.02053723413688764
+        ],
+        [
+          63.12164310633619,
+          0.020451228614349726
+        ],
+        [
+          67.96806599954927,
+          0.020256013393793668
+        ],
+        [
+          69.17967172285253,
+          0.0201969922816659
+        ],
+        [
+          71.60288316945908,
+          0.02004316518059463
+        ],
+        [
+          74.02609461606562,
+          0.019898210396572514
+        ],
+        [
+          76.44930606267216,
+          0.01976924857128275
+        ],
+        [
+          82.05653011294073,
+          0.019489348984090844
+        ],
+        [
+          87.6637541632093,
+          0.019220713325955673
+        ],
+        [
+          93.27097821347787,
+          0.01895725770575564
+        ],
+        [
+          102.7701466845776,
+          0.018524141812723955
+        ],
+        [
+          112.26931515567732,
+          0.01810496946196378
+        ],
+        [
+          121.76848362677704,
+          0.017703585856701017
+        ],
+        [
+          131.26765209787678,
+          0.01731891699442415
+        ],
+        [
+          142.3439771582361,
+          0.01689224634490312
+        ],
+        [
+          153.42030221859542,
+          0.016481986565812668
+        ],
+        [
+          158.24761904761905,
+          0.016312410669924286
+        ],
+        [
+          158.36654057116988,
+          0.01630661758093969
+        ],
+        [
+          158.4854620947207,
+          0.01630098671802873
+        ],
+        [
+          159.74761904761905,
+          0.016247013619081225
+        ],
+        [
+          159.74948515317416,
+          60.5550837849704
+        ],
+        [
+          159.75135125872927,
+          59.715899321352694
+        ],
+        [
+          159.75508346983946,
+          58.07599527962879
+        ],
+        [
+          159.75881568094965,
+          56.50049123735886
+        ],
+        [
+          159.76254789205984,
+          54.98606070143753
+        ],
+        [
+          159.78008817979105,
+          48.601838442002894
+        ],
+        [
+          159.79762846752226,
+          43.230803233169055
+        ],
+        [
+          159.81516875525347,
+          38.67062718758856
+        ],
+        [
+          159.83270904298467,
+          34.76636906409767
+        ],
+        [
+          159.85917311481012,
+          29.858190784022973
+        ],
+        [
+          159.88563718663556,
+          25.87168863662928
+        ],
+        [
+          159.912101258461,
+          22.591255760033462
+        ],
+        [
+          159.93856533028645,
+          19.85964720590677
+        ],
+        [
+          159.9650294021119,
+          17.561702508503185
+        ],
+        [
+          160.01112136384918,
+          14.348776424635641
+        ],
+        [
+          160.05721332558647,
+          11.877866532784157
+        ],
+        [
+          160.10330528732376,
+          9.937578120397411
+        ],
+        [
+          160.14939724906105,
+          8.389146890393388
+        ],
+        [
+          160.19548921079834,
+          7.1359080206101755
+        ],
+        [
+          160.24158117253563,
+          6.109058805719007
+        ],
+        [
+          160.3166327641328,
+          4.798431839274892
+        ],
+        [
+          160.39168435572998,
+          3.8125998013049105
+        ],
+        [
+          160.46673594732715,
+          3.0570752611734235
+        ],
+        [
+          160.54178753892432,
+          2.469356937651785
+        ],
+        [
+          160.6168391305215,
+          2.006495409839986
+        ],
+        [
+          160.69189072211867,
+          1.6382892502712927
+        ],
+        [
+          160.81292628958846,
+          1.1910000234875202
+        ],
+        [
+          160.93396185705825,
+          0.8721542865378243
+        ],
+        [
+          161.05499742452804,
+          0.6423373622867651
+        ],
+        [
+          161.17603299199783,
+          0.4751545229177425
+        ],
+        [
+          161.29706855946762,
+          0.3526073482505128
+        ],
+        [
+          161.46985652170034,
+          0.23122574867162626
+        ],
+        [
+          161.64264448393305,
+          0.15243710106686642
+        ],
+        [
+          161.81543244616577,
+          0.10090688951568484
+        ],
+        [
+          161.9882204083985,
+          0.067014391121537
+        ],
+        [
+          162.1610083706312,
+          0.04474531875189821
+        ],
+        [
+          162.38610275126362,
+          0.026778698500390056
+        ],
+        [
+          162.61119713189603,
+          0.01630178885593597
+        ],
+        [
+          162.83629151252845,
+          0.01008954485286244
+        ],
+        [
+          163.06138589316086,
+          0.006491322093074821
+        ],
+        [
+          163.3001953672972,
+          0.004301481912760653
+        ],
+        [
+          163.53900484143352,
+          0.0031394490987300626
+        ],
+        [
+          163.77781431556986,
+          0.0025037694177462424
+        ],
+        [
+          164.01699558831393,
+          0.002129793078871012
+        ],
+        [
+          164.256176861058,
+          0.0019088173010844629
+        ],
+        [
+          164.49535813380209,
+          0.0017818092701788683
+        ],
+        [
+          164.73455176863084,
+          0.0017096020742255254
+        ],
+        [
+          165.96552936083825,
+          0.0015551220522697549
+        ],
+        [
+          167.19650695304566,
+          0.0015736836525376383
+        ],
+        [
+          168.42748454525307,
+          0.0015984049032406013
+        ],
+        [
+          172.0340398974043,
+          0.0016056252212215693
+        ],
+        [
+          175.64059524955556,
+          0.0016008283759621736
+        ],
+        [
+          179.2471506017068,
+          0.0015960097700918729
+        ],
+        [
+          196.48491242496618,
+          0.0015762455667397643
+        ],
+        [
+          213.72267424822556,
+          0.0015567790140456818
+        ],
+        [
+          230.96043607148493,
+          0.0015375322820345896
+        ],
+        [
+          256.216460721343,
+          0.0015082736255358335
+        ],
+        [
+          281.4724853712011,
+          0.0014809776188172083
+        ],
+        [
+          298.21839993404154,
+          0.001456060546735495
+        ]
+      ],
+      "title": "Az (M/S\u00b2) x Time (S)",
+      "inputs": [
+        "Time (s)"
+      ],
+      "outputs": [
+        "Az (m/s\u00b2)"
+      ],
+      "interpolation": "spline",
+      "extrapolation": "zero",
+      "signature": {
+        "module": "rocketpy.mathutils.function",
+        "name": "Function",
+        "hash": 8532846656222
+      }
+    },
     "alpha1": {
       "source": [
         [
-          0.0,
+          0.0,
+          0.0
+        ],
+        [
+          0.00140955829402094,
+          0.0
+        ],
+        [
+          0.00281911658804188,
+          0.0
+        ],
+        [
+          0.00563823317608376,
+          0.0
+        ],
+        [
+          0.00845734976412564,
+          0.0
+        ],
+        [
+          0.01127646635216752,
+          0.0
+        ],
+        [
+          0.039467632232586314,
+          0.0
+        ],
+        [
+          0.04085528032029989,
+          0.0
+        ],
+        [
+          0.04224292840801347,
+          0.0
+        ],
+        [
+          0.04501822458344063,
+          0.0
+        ],
+        [
+          0.047793520758867794,
+          0.0
+        ],
+        [
+          0.050568816934294956,
+          0.0
+        ],
+        [
+          0.051535065794208836,
+          0.0
+        ],
+        [
+          0.052501314654122715,
+          0.0
+        ],
+        [
+          0.05443381237395048,
+          0.0
+        ],
+        [
+          0.056366310093778245,
+          0.0
+        ],
+        [
+          0.05829880781360601,
+          0.0
+        ],
+        [
+          0.06066778422864502,
+          0.0
+        ],
+        [
+          0.06303676064368403,
+          0.0
+        ],
+        [
+          0.06540573705872305,
+          0.0
+        ],
+        [
+          0.08909550120911316,
+          0.0
+        ],
+        [
+          0.09280001741983737,
+          0.0
+        ],
+        [
+          0.09574786203637055,
+          0.0
+        ],
+        [
+          0.09869570665290373,
+          0.0
+        ],
+        [
+          0.10099207719695144,
+          0.0
+        ],
+        [
+          0.10328844774099916,
+          0.0
+        ],
+        [
+          0.10558481828504687,
+          0.0
+        ],
+        [
+          0.1101775593731423,
+          0.0
+        ],
+        [
+          0.11477030046123773,
+          0.0
+        ],
+        [
+          0.11936304154933317,
+          0.0
+        ],
+        [
+          0.1312706469438581,
+          0.0
+        ],
+        [
+          0.14317825233838302,
+          0.0
+        ],
+        [
+          0.1499601229088181,
+          0.0
+        ],
+        [
+          0.1542012180187087,
+          0.0
+        ],
+        [
+          0.1584423131285993,
+          0.0
+        ],
+        [
+          0.1626834082384899,
+          0.0
+        ],
+        [
+          0.1711655984582711,
+          0.0
+        ],
+        [
+          0.17964778867805228,
+          0.0
+        ],
+        [
+          0.18812997889783348,
+          0.0
+        ],
+        [
+          0.19446537171097383,
+          0.0
+        ],
+        [
+          0.20080076452411422,
+          0.0
+        ],
+        [
+          0.20566109450366143,
+          0.0
+        ],
+        [
+          0.21052142448320865,
+          0.0
+        ],
+        [
+          0.21538175446275587,
+          0.0
+        ],
+        [
+          0.22510241442185028,
+          0.0
+        ],
+        [
+          0.23482307438094469,
+          0.0
+        ],
+        [
+          0.2445437343400391,
+          0.0
+        ],
+        [
+          0.2542643942991335,
+          0.0
+        ],
+        [
+          0.3514709938900776,
+          0.0
+        ],
+        [
+          0.36324670161934375,
+          0.0
+        ],
+        [
+          0.3693547037882063,
+          -0.0002903958256136621
+        ],
+        [
+          0.3754627059570688,
+          -0.0005926059605277565
+        ],
+        [
+          0.3876787102947939,
+          -0.0012327164888078998
+        ],
+        [
+          0.39989471463251897,
+          -0.0019199509424177778
+        ],
+        [
+          0.41211071897024404,
+          -0.0026541036325146193
+        ],
+        [
+          0.47147904178591876,
+          -0.0068735358387107745
+        ],
+        [
+          0.5078212847273655,
+          -0.009969678092907656
+        ],
+        [
+          0.5343387025617514,
+          -0.012452691220275461
+        ],
+        [
+          0.5608561203961373,
+          -0.01510348805759396
+        ],
+        [
+          0.5873735382305232,
+          -0.017899801071555903
+        ],
+        [
+          0.6404083738992948,
+          -0.023818404532946178
+        ],
+        [
+          0.6934432095680665,
+          -0.02992250179792003
+        ],
+        [
+          0.7464780452368381,
+          -0.0358349405284134
+        ],
+        [
+          0.7995128809056098,
+          -0.04107686627414409
+        ],
+        [
+          0.813164227469089,
+          -0.04225040764173859
+        ],
+        [
+          0.8268155740325682,
+          -0.04332955321633407
+        ],
+        [
+          0.8404669205960474,
+          -0.04430512452120558
+        ],
+        [
+          0.8775732859954444,
+          -0.04634821676225365
+        ],
+        [
+          0.9146796513948413,
+          -0.04731755589444684
+        ],
+        [
+          0.9517860167942382,
+          -0.04698111928172552
+        ],
+        [
+          0.9674325642455079,
+          -0.046392592445102764
+        ],
+        [
+          0.9990075872778321,
+          -0.044339342419756525
+        ],
+        [
+          1.0183793592598076,
+          -0.04245113714231626
+        ],
+        [
+          1.037751131241783,
+          -0.04006211952568012
+        ],
+        [
+          1.0571229032237586,
+          -0.03716239197656539
+        ],
+        [
+          1.0878788324799102,
+          -0.03150356375582326
+        ],
+        [
+          1.118634761736062,
+          -0.024548986194437412
+        ],
+        [
+          1.1439443303803107,
+          -0.017866631562340203
+        ],
+        [
+          1.1692538990245596,
+          -0.010384546263406184
+        ],
+        [
+          1.1945634676688084,
+          -0.0021899009333595345
+        ],
+        [
+          1.2316568052102488,
+          0.010934898661220379
+        ],
+        [
+          1.2687501427516892,
+          0.024929352159524708
+        ],
+        [
+          1.3058434802931296,
+          0.039148867908563596
+        ],
+        [
+          1.34293681783457,
+          0.05284416180120884
+        ],
+        [
+          1.4021386812930872,
+          0.07161749108101194
+        ],
+        [
+          1.447031703480718,
+          0.08137056063859054
+        ],
+        [
+          1.491924725668349,
+          0.08559814796376024
+        ],
+        [
+          1.5260726318617992,
+          0.08430252372205038
+        ],
+        [
+          1.5602205380552494,
+          0.0787468772793912
+        ],
+        [
+          1.5943684442486996,
+          0.06886575062739869
+        ],
+        [
+          1.6285163504421498,
+          0.0548770873091121
+        ],
+        [
+          1.6626642566356,
+          0.037315479137293085
+        ],
+        [
+          1.6968121628290502,
+          0.017046306861821868
+        ],
+        [
+          1.7309600690225004,
+          -0.004758069144151457
+        ],
+        [
+          1.770308643380365,
+          -0.029905537182122983
+        ],
+        [
+          1.8096572177382295,
+          -0.05268033822065717
+        ],
+        [
+          1.849005792096094,
+          -0.0704932185343594
+        ],
+        [
+          1.8883543664539586,
+          -0.0810290496339839
+        ],
+        [
+          1.9277029408118231,
+          -0.08258995833640129
+        ],
+        [
+          1.9670515151696877,
+          -0.07441249091739166
+        ],
+        [
+          2.006400089527552,
+          -0.05688714038062432
+        ],
+        [
+          2.0457486638854165,
+          -0.031711131328230835
+        ],
+        [
+          2.085097238243281,
+          -0.0018151665408646389
+        ],
+        [
+          2.124445812601145,
+          0.028896646892773974
+        ],
+        [
+          2.1637943869590095,
+          0.056019990352291285
+        ],
+        [
+          2.203142961316874,
+          0.07531130024715438
+        ],
+        [
+          2.242491535674738,
+          0.083410630767702
+        ],
+        [
+          2.2818401100326025,
+          0.07852850708894038
+        ],
+        [
+          2.3211886843904668,
+          0.0609555866021542
+        ],
+        [
+          2.360537258748331,
+          0.03328291552556277
+        ],
+        [
+          2.3998858331061954,
+          0.00016347946984129422
+        ],
+        [
+          2.4392344074640597,
+          -0.032382389404445544
+        ],
+        [
+          2.478582981821924,
+          -0.05806232877298454
+        ],
+        [
+          2.5179315561797884,
+          -0.07160431125451142
+        ],
+        [
+          2.5572801305376527,
+          -0.06997172332207588
+        ],
+        [
+          2.596628704895517,
+          -0.05323080428304746
+        ],
+        [
+          2.6359772792533813,
+          -0.024803009437254542
+        ],
+        [
+          2.6753258536112456,
+          0.009036930923543726
+        ],
+        [
+          2.71467442796911,
+          0.04042427675987522
+        ],
+        [
+          2.746682540487563,
+          0.05865445246928083
+        ],
+        [
+          2.778690653006016,
+          0.06694429846333674
+        ],
+        [
+          2.810698765524469,
+          0.06384255884262044
+        ],
+        [
+          2.842706878042922,
+          0.04986895574349643
+        ],
+        [
+          2.874714990561375,
+          0.027524130978575638
+        ],
+        [
+          2.9109277644238576,
+          -0.00269190340549512
+        ],
+        [
+          2.940339896156497,
+          -0.02607809164881645
+        ],
+        [
+          2.9638563968017557,
+          -0.041005569754403254
+        ],
+        [
+          2.9873728974470146,
+          -0.05093713912312733
+        ],
+        [
+          2.991532758872659,
+          -0.052092260216158114
+        ],
+        [
+          2.995692620298303,
+          -0.05305875500775517
+        ],
+        [
+          2.999852481723947,
+          -0.05383414053576236
+        ],
+        [
+          3.0011406359017885,
+          -0.05402588637728672
+        ],
+        [
+          3.00242879007963,
+          -0.054199031072585065
+        ],
+        [
+          3.0050050984353125,
+          -0.05447187630138386
+        ],
+        [
+          3.007581406790995,
+          -0.05466950417853711
+        ],
+        [
+          3.0312400452524226,
+          -0.05350074900372847
+        ],
+        [
+          3.05489868371385,
+          -0.046684258926381644
+        ],
+        [
+          3.0785573221752776,
+          -0.03520471025307461
+        ],
+        [
+          3.102215960636705,
+          -0.020448494868585295
+        ],
+        [
+          3.120664542586555,
+          -0.0076733013835665
+        ],
+        [
+          3.139113124536405,
+          0.0052522922611489605
+        ],
+        [
+          3.1575617064862547,
+          0.01737346595078626
+        ],
+        [
+          3.194458870385954,
+          0.03661780372557545
+        ],
+        [
+          3.2233916577517485,
+          0.04431140958201685
+        ],
+        [
+          3.252324445117543,
+          0.044107306936300404
+        ],
+        [
+          3.2812572324833376,
+          0.036376091608541695
+        ],
+        [
+          3.2864042093564865,
+          0.03427507176730539
+        ],
+        [
+          3.2915511862296354,
+          0.03200306760542403
+        ],
+        [
+          3.2966981631027843,
+          0.029582122694529905
+        ],
+        [
+          3.3044731976480057,
+          0.025671822193455016
+        ],
+        [
+          3.312248232193227,
+          0.021507612700083823
+        ],
+        [
+          3.3200232667384486,
+          0.01714663502079701
+        ],
+        [
+          3.3299608976332786,
+          0.011395161736812796
+        ],
+        [
+          3.3398985285281086,
+          0.005548977250571268
+        ],
+        [
+          3.3498361594229387,
+          -0.0002677296918748841
+        ],
+        [
+          3.3684063767347974,
+          -0.010543026632076761
+        ],
+        [
+          3.386976594046656,
+          -0.019587917538428538
+        ],
+        [
+          3.4020328166662903,
+          -0.025685066391486447
+        ],
+        [
+          3.4113057466050263,
+          -0.028771085303698263
+        ],
+        [
+          3.4205786765437622,
+          -0.031272523218027766
+        ],
+        [
+          3.429851606482498,
+          -0.033153306767041514
+        ],
+        [
+          3.4462125806335115,
+          -0.03490836739070653
+        ],
+        [
+          3.462573554784525,
+          -0.034697275842770305
+        ],
+        [
+          3.4789345289355382,
+          -0.032623427559607225
+        ],
+        [
+          3.5099101021393686,
+          -0.024696427739787728
+        ],
+        [
+          3.5343946919875657,
+          -0.0156011585745389
+        ],
+        [
+          3.558879281835763,
+          -0.005288154263086805
+        ],
+        [
+          3.58336387168396,
+          0.005026203255519989
+        ],
+        [
+          3.6154318916074843,
+          0.016966156040736934
+        ],
+        [
+          3.6474999115310087,
+          0.024871903677102885
+        ],
+        [
+          3.679567931454533,
+          0.027140149854026116
+        ],
+        [
+          3.7116359513780575,
+          0.02360552357739733
+        ],
+        [
+          3.750677226849746,
+          0.012944161757067951
+        ],
+        [
+          3.789718502321435,
+          -0.0012254929944189822
+        ],
+        [
+          3.8287597777931235,
+          -0.014009644350773712
+        ],
+        [
+          3.867801053264812,
+          -0.021398129822309257
+        ],
+        [
+          3.906842328736501,
+          -0.021570995945265122
+        ],
+        [
+          3.9127975041938576,
+          -0.020979878932163982
+        ],
+        [
+          3.9187526796512144,
+          -0.02025285959536514
+        ],
+        [
+          3.9247078551085712,
+          -0.019397035277828094
+        ],
+        [
+          3.9366182060232844,
+          -0.017345436263134156
+        ],
+        [
+          3.9485285569379975,
+          -0.014893947566559361
+        ],
+        [
+          3.9604389078527107,
+          -0.012122712432139632
+        ],
+        [
+          3.9894733064604,
+          -0.0045330092144650015
+        ],
+        [
+          4.018507705068089,
+          0.0032204289937931567
+        ],
+        [
+          4.047542103675778,
+          0.009888089233463647
+        ],
+        [
+          4.0765765022834675,
+          0.014502147708492771
+        ],
+        [
+          4.119155795005119,
+          0.01663845005669968
+        ],
+        [
+          4.16173508772677,
+          0.013182471231687766
+        ],
+        [
+          4.1691207712068685,
+          0.012039284915190655
+        ],
+        [
+          4.176506454686967,
+          0.0107846004466821
+        ],
+        [
+          4.1838921381670655,
+          0.009436639555228657
+        ],
+        [
+          4.1986635051272625,
+          0.0065505769314198594
+        ],
+        [
+          4.2134348720874595,
+          0.0034993085339792614
+        ],
+        [
+          4.2282062390476565,
+          0.0004085237778085003
+        ],
+        [
+          4.264323210631898,
+          -0.006651408968989644
+        ],
+        [
+          4.300440182216139,
+          -0.011823415686860423
+        ],
+        [
+          4.33655715380038,
+          -0.014043155022690877
+        ],
+        [
+          4.372674125384622,
+          -0.013031448741364006
+        ],
+        [
+          4.416044435312633,
+          -0.008146613864462297
+        ],
+        [
+          4.459414745240645,
+          -0.0010189668799828822
+        ],
+        [
+          4.502785055168657,
+          0.005744229789595077
+        ],
+        [
+          4.546155365096668,
+          0.009892014783787359
+        ],
+        [
+          4.58952567502468,
+          0.010284625759328389
+        ],
+        [
+          4.632895984952691,
+          0.007129925523329695
+        ],
+        [
+          4.676266294880703,
+          0.0018045488830578148
+        ],
+        [
+          4.719636604808715,
+          -0.003775075899168715
+        ],
+        [
+          4.768224902129621,
+          -0.00818193502850696
+        ],
+        [
+          4.816813199450527,
+          -0.009217150287549752
+        ],
+        [
+          4.865401496771433,
+          -0.0068143252028732846
+        ],
+        [
+          4.913989794092339,
+          -0.0022098488277038507
+        ],
+        [
+          4.962578091413246,
+          0.00266251799506642
+        ],
+        [
+          5.016300880486902,
+          0.006163517751072674
+        ],
+        [
+          5.070023669560559,
+          0.006305265255399755
+        ],
+        [
+          5.123746458634216,
+          0.002966114213452828
+        ],
+        [
+          5.177469247707872,
+          -0.0017452415390847456
+        ],
+        [
+          5.219601255563254,
+          -0.005917333374345262
+        ],
+        [
+          5.261733263418636,
+          -0.009165318066893835
+        ],
+        [
+          5.3038652712740175,
+          -0.01030501185004061
+        ],
+        [
+          5.345997279129399,
+          -0.00890054179134382
+        ],
+        [
+          5.388129286984781,
+          -0.005359093761133921
+        ],
+        [
+          5.438594166103664,
+          0.00012116313985681801
+        ],
+        [
+          5.489059045222548,
+          0.004762225463624993
+        ],
+        [
+          5.539523924341431,
+          0.006801178371515705
+        ],
+        [
+          5.589988803460314,
+          0.0057664025964822225
+        ],
+        [
+          5.6404536825791975,
+          0.002524124729860848
+        ],
+        [
+          5.690918561698081,
+          -0.0013459486927885264
+        ],
+        [
+          5.741383440816964,
+          -0.004369133358550628
+        ],
+        [
+          5.7918483199358475,
+          -0.005700720497593786
+        ],
+        [
+          5.842313199054731,
+          -0.005220570191901003
+        ],
+        [
+          5.900175444574162,
+          -0.002973281027045379
+        ],
+        [
+          5.958037690093594,
+          -4.696344406957301e-05
+        ],
+        [
+          6.015899935613025,
+          0.002304197471761602
+        ],
+        [
+          6.073762181132457,
+          0.003210718785864938
+        ],
+        [
+          6.1316244266518884,
+          0.002466097026668231
+        ],
+        [
+          6.18948667217132,
+          0.0005363295379295205
+        ],
+        [
+          6.2473489176907515,
+          -0.0016882373556626163
+        ],
+        [
+          6.305211163210183,
+          -0.003286863770101235
+        ],
+        [
+          6.374869724777001,
+          -0.0037145218108510774
+        ],
+        [
+          6.44452828634382,
+          -0.002489050201141947
+        ],
+        [
+          6.514186847910638,
+          -0.0003439355139214857
+        ],
+        [
+          6.583845409477457,
+          0.0016359424864437382
+        ],
+        [
+          6.653503971044275,
+          0.0025435233184615182
+        ],
+        [
+          6.723162532611093,
+          0.0020215420878617403
+        ],
+        [
+          6.792821094177912,
+          0.00036762150902487644
+        ],
+        [
+          6.856149583247434,
+          -0.001345890939333622
+        ],
+        [
+          6.919478072316956,
+          -0.0026252408991555764
+        ],
+        [
+          6.982806561386478,
+          -0.003138253161614318
+        ],
+        [
+          7.046135050456,
+          -0.0028368920206784903
+        ],
+        [
+          7.109463539525522,
+          -0.0019266045460339571
+        ],
+        [
+          7.172792028595044,
+          -0.0007619332640142797
+        ],
+        [
+          7.236120517664566,
+          0.00028117484109572896
+        ],
+        [
+          7.299449006734088,
+          0.0009171270484827329
+        ],
+        [
+          7.36277749580361,
+          0.0010178570345059277
+        ],
+        [
+          7.441907419493829,
+          0.0004646032517193348
+        ],
+        [
+          7.521037343184047,
+          -0.00043922531676036496
+        ],
+        [
+          7.600167266874266,
+          -0.0012601641574250973
+        ],
+        [
+          7.696303025687341,
+          -0.0018327880832994473
+        ],
+        [
+          7.7924387845004155,
+          -0.0016646540392379994
+        ],
+        [
+          7.88857454331349,
+          -0.0009312228772264884
+        ],
+        [
+          7.984710302126565,
+          -0.00013653505308023153
+        ],
+        [
+          8.08084606093964,
+          0.00024264948779652052
+        ],
+        [
+          8.176981819752715,
+          2.2151948633935272e-05
+        ],
+        [
+          8.27311757856579,
+          -0.0006277957629214338
+        ],
+        [
+          8.374791072592975,
+          -0.0012823267750350878
+        ],
+        [
+          8.47646456662016,
+          -0.0015952773315471794
+        ],
+        [
+          8.578138060647346,
+          -0.0014339856492937952
+        ],
+        [
+          8.679811554674531,
+          -0.0009142869426435591
+        ],
+        [
+          8.781485048701716,
+          -0.0003212958727695764
+        ],
+        [
+          8.883158542728902,
+          3.6237055150046075e-05
+        ],
+        [
+          9.00524652036951,
+          -4.62962028360177e-05
+        ],
+        [
+          9.12733449801012,
+          -0.0008004315721725479
+        ],
+        [
+          9.249422475650729,
+          -0.0018511387391905193
+        ],
+        [
+          9.371510453291338,
+          -0.002465590312729241
+        ],
+        [
+          9.493598430931947,
+          -0.0020376979742005507
+        ],
+        [
+          9.615686408572556,
+          -0.0005840221062870771
+        ],
+        [
+          9.638495054883064,
+          -0.00022651416764998158
+        ],
+        [
+          9.661303701193573,
+          0.00010861728289926355
+        ],
+        [
+          9.684112347504081,
+          0.00040345435518344486
+        ],
+        [
+          9.729729640125099,
+          0.0008272750287769188
+        ],
+        [
+          9.775346932746116,
+          0.0010180488058677461
+        ],
+        [
+          9.820964225367133,
+          0.000973197134870097
+        ],
+        [
+          9.921906879777866,
+          0.0002740985159911342
+        ],
+        [
+          10.004312108890508,
+          -0.0006622553414833774
+        ],
+        [
+          10.08671733800315,
+          -0.0016105700264862652
+        ],
+        [
+          10.16912256711579,
+          -0.0023156040721710445
+        ],
+        [
+          10.318508402311611,
+          -0.002597168785196665
+        ],
+        [
+          10.416310959001898,
+          -0.0019779543422472853
+        ],
+        [
+          10.514113515692184,
+          -0.0010133527155942786
+        ],
+        [
+          10.61191607238247,
+          -0.00010275482132879928
+        ],
+        [
+          10.709718629072757,
+          0.0003630857223296308
+        ],
+        [
+          10.84073505366698,
+          3.466775025503111e-05
+        ],
+        [
+          10.935791309767657,
+          -0.000811748727593918
+        ],
+        [
+          11.030847565868333,
+          -0.0018053804377879939
+        ],
+        [
+          11.12590382196901,
+          -0.00259276613580988
+        ],
+        [
+          11.220960078069686,
+          -0.002893642072147723
+        ],
+        [
+          11.34293278943959,
+          -0.0024852880709773056
+        ],
+        [
+          11.4367198655186,
+          -0.0016975407327439094
+        ],
+        [
+          11.530506941597611,
+          -0.0008266620261765323
+        ],
+        [
+          11.624294017676622,
+          -0.00017708565030747787
+        ],
+        [
+          11.718081093755632,
+          3.495302909459513e-05
+        ],
+        [
+          11.830682395509069,
+          -0.0003399540555769988
+        ],
+        [
+          11.943283697262505,
+          -0.0012082968254360307
+        ],
+        [
+          12.055884999015941,
+          -0.0021808018049307674
+        ],
+        [
+          12.168486300769377,
+          -0.0028569946219575526
+        ],
+        [
+          12.29994439393496,
+          -0.0029646173098017005
+        ],
+        [
+          12.404633593778348,
+          -0.002514085327056358
+        ],
+        [
+          12.509322793621736,
+          -0.0017916592616116654
+        ],
+        [
+          12.614011993465125,
+          -0.0010670935146385324
+        ],
+        [
+          12.718701193308513,
+          -0.000599417802738287
+        ],
+        [
+          12.865684810686352,
+          -0.0006208431642879767
+        ],
+        [
+          12.973565119592086,
+          -0.0011382721993143424
+        ],
+        [
+          13.08144542849782,
+          -0.0018788268638982876
+        ],
+        [
+          13.189325737403555,
+          -0.0026066716610118204
+        ],
+        [
+          13.29720604630929,
+          -0.0031017784539142932
+        ],
+        [
+          13.455915925693203,
+          -0.00321812864015698
+        ],
+        [
+          13.572668910835402,
+          -0.0028303412421344346
+        ],
+        [
+          13.6894218959776,
+          -0.002229174176200989
+        ],
+        [
+          13.8061748811198,
+          -0.0016442074892481728
+        ],
+        [
+          13.922927866261999,
+          -0.0012917995844058743
+        ],
+        [
+          14.085961813353116,
+          -0.0013767018408477368
+        ],
+        [
+          14.204687031875425,
+          -0.00185817978859234
+        ],
+        [
+          14.323412250397734,
+          -0.002523732621271186
+        ],
+        [
+          14.442137468920043,
+          -0.0031803227679696754
+        ],
+        [
+          14.560862687442352,
+          -0.0036476762210079622
+        ],
+        [
+          14.727812813776477,
+          -0.0038153974569076826
+        ],
+        [
+          14.852763845864722,
+          -0.003562988296477575
+        ],
+        [
+          14.977714877952966,
+          -0.0031280230734956936
+        ],
+        [
+          15.10266591004121,
+          -0.0026815303592674115
+        ],
+        [
+          15.227616942129455,
+          -0.0023888347307469363
+        ],
+        [
+          15.39474055277627,
+          -0.002401446550848175
+        ],
+        [
+          15.526750000917001,
+          -0.0027605304490308444
+        ],
+        [
+          15.658759449057733,
+          -0.0033265747051839214
+        ],
+        [
+          15.790768897198465,
+          -0.003955894047552863
+        ],
+        [
+          15.922778345339196,
+          -0.004498772414533144
+        ],
+        [
+          16.079671368014623,
+          -0.004889624177901195
+        ],
+        [
+          16.23656439069005,
+          -0.004966554209986829
+        ],
+        [
+          16.393457413365475,
+          -0.004804319710036871
+        ],
+        [
+          16.5503504360409,
+          -0.004550567060155511
+        ],
+        [
+          16.72307251287968,
+          -0.004350917944271682
+        ],
+        [
+          16.895794589718456,
+          -0.00439623376794087
+        ],
+        [
+          17.068516666557233,
+          -0.004751516934715461
+        ],
+        [
+          17.24123874339601,
+          -0.005347864826465216
+        ],
+        [
+          17.413960820234788,
+          -0.006032628865415065
+        ],
+        [
+          17.60482627556807,
+          -0.006717245805202881
+        ],
+        [
+          17.79569173090135,
+          -0.007210455431394691
+        ],
+        [
+          17.98655718623463,
+          -0.007511404494846636
+        ],
+        [
+          18.17742264156791,
+          -0.007712052838826788
+        ],
+        [
+          18.368288096901193,
+          -0.007938575266362779
+        ],
+        [
+          18.559153552234473,
+          -0.008294135304509169
+        ],
+        [
+          18.750019007567754,
+          -0.008825335204403565
+        ],
+        [
+          18.940884462901035,
+          -0.009521310896395765
+        ],
+        [
+          19.160009857916293,
+          -0.010464926513616548
+        ],
+        [
+          19.37913525293155,
+          -0.011490726305131104
+        ],
+        [
+          19.59826064794681,
+          -0.012548234576699355
+        ],
+        [
+          19.817386042962067,
+          -0.013625760707960724
+        ],
+        [
+          20.036511437977325,
+          -0.014745293479402326
+        ],
+        [
+          20.343119545325326,
+          -0.016453152489848633
+        ],
+        [
+          20.649727652673327,
+          -0.018426779024239743
+        ],
+        [
+          20.95633576002133,
+          -0.02075437765238077
+        ],
+        [
+          21.26294386736933,
+          -0.023489896679772235
+        ],
+        [
+          21.56955197471733,
+          -0.026663207501771244
+        ],
+        [
+          21.876160082065333,
+          -0.030297711338675905
+        ],
+        [
+          22.182768189413334,
+          -0.03442338440525622
+        ],
+        [
+          22.489376296761336,
+          -0.03908002676181566
+        ],
+        [
+          22.837549744359293,
+          -0.04506819012641322
+        ],
+        [
+          23.18572319195725,
+          -0.0518564615995584
+        ],
+        [
+          23.53389663955521,
+          -0.05948047272213882
+        ],
+        [
+          23.882070087153167,
+          -0.0679492002815911
+        ],
+        [
+          24.230243534751125,
+          -0.07725483005502737
+        ],
+        [
+          24.578416982349083,
+          -0.0873937063179611
+        ],
+        [
+          24.92659042994704,
+          -0.09838290270605371
+        ],
+        [
+          25.274763877545,
+          -0.11022146597089928
+        ],
+        [
+          25.544320922023445,
+          -0.11984679798399019
+        ],
+        [
+          25.81387796650189,
+          -0.12948921770484906
+        ],
+        [
+          25.885098654500275,
+          -0.13194620422284006
+        ],
+        [
+          25.88571428571429,
+          -0.13196713500331844
+        ],
+        [
+          25.891725275535915,
+          -0.13216970032468875
+        ],
+        [
+          25.89773626535754,
+          -0.13237168465853003
+        ],
+        [
+          25.90975824500079,
+          -0.13277674963679728
+        ],
+        [
+          25.921780224644042,
+          -0.13317930524538368
+        ],
+        [
+          25.933802204287293,
+          -0.13357921687161256
+        ],
+        [
+          26.05402200071982,
+          -0.13740097728848044
+        ],
+        [
+          26.174241797152344,
+          -0.14078154578379787
+        ],
+        [
+          26.29446159358487,
+          -0.14351851587114228
+        ],
+        [
+          26.414681390017396,
+          -0.14536275584155112
+        ],
+        [
+          26.59056092778596,
+          -0.1458173834129439
+        ],
+        [
+          26.76644046555452,
+          -0.14257745010683961
+        ],
+        [
+          26.942320003323083,
+          -0.13428797388255828
+        ],
+        [
+          27.118199541091645,
+          -0.11941005953035906
+        ],
+        [
+          27.294079078860207,
+          -0.09630320265646262
+        ],
+        [
+          27.38571428571429,
+          -0.08046206548717537
+        ],
+        [
+          27.397496400123647,
+          0.0
+        ],
+        [
+          27.409278514533003,
+          0.0
+        ],
+        [
+          27.43284274335172,
+          0.0
+        ],
+        [
+          27.456406972170438,
+          0.0
+        ],
+        [
+          27.479971200989155,
+          0.0
+        ],
+        [
+          27.597382226258187,
+          0.0
+        ],
+        [
+          27.71479325152722,
+          0.0
+        ],
+        [
+          27.83220427679625,
+          0.0
+        ],
+        [
+          27.949615302065283,
+          0.0
+        ],
+        [
+          28.127223521019754,
+          0.0
+        ],
+        [
+          28.304831739974226,
+          0.0
+        ],
+        [
+          28.482439958928698,
+          0.0
+        ],
+        [
+          28.66004817788317,
+          0.0
+        ],
+        [
+          28.83765639683764,
+          0.0
+        ],
+        [
+          29.142165265211645,
+          0.0
+        ],
+        [
+          29.44667413358565,
+          0.0
+        ],
+        [
+          29.751183001959653,
+          0.0
+        ],
+        [
+          30.055691870333657,
+          0.0
+        ],
+        [
+          30.36020073870766,
+          0.0
+        ],
+        [
+          30.664709607081665,
+          0.0
+        ],
+        [
+          31.156066194366023,
+          0.0
+        ],
+        [
+          31.64742278165038,
+          0.0
+        ],
+        [
+          32.138779368934735,
+          0.0
+        ],
+        [
+          32.63013595621909,
+          0.0
+        ],
+        [
+          33.12149254350345,
+          0.0
+        ],
+        [
+          33.61284913078781,
+          0.0
+        ],
+        [
+          34.104205718072166,
+          0.0
+        ],
+        [
+          34.59556230535652,
+          0.0
+        ],
+        [
+          35.20520071519727,
+          0.0
+        ],
+        [
+          35.81483912503802,
+          0.0
+        ],
+        [
+          36.42447753487877,
+          0.0
+        ],
+        [
+          37.03411594471952,
+          0.0
+        ],
+        [
+          37.61030939313683,
+          0.0
+        ],
+        [
+          38.186502841554145,
+          0.0
+        ],
+        [
+          38.76269628997146,
+          0.0
+        ],
+        [
+          39.33888973838877,
+          0.0
+        ],
+        [
+          40.470199282925094,
+          0.0
+        ],
+        [
+          41.601508827461416,
+          0.0
+        ],
+        [
+          42.73281837199774,
+          0.0
+        ],
+        [
+          43.86412791653406,
+          0.0
+        ],
+        [
+          45.065546566682556,
+          0.0
+        ],
+        [
+          46.26696521683105,
+          0.0
+        ],
+        [
+          47.46838386697955,
+          0.0
+        ],
+        [
+          48.0644116487991,
+          0.0
+        ],
+        [
+          48.66043943061865,
+          0.0
+        ],
+        [
+          49.2564672124382,
+          0.0
+        ],
+        [
+          49.85016027085198,
+          0.0
+        ],
+        [
+          50.44385332926576,
+          0.0
+        ],
+        [
+          51.037546387679534,
+          0.0
+        ],
+        [
+          52.22602215013901,
+          0.0
+        ],
+        [
+          53.414497912598485,
+          0.0
+        ],
+        [
+          54.60297367505796,
+          0.0
+        ],
+        [
+          55.78628196962012,
+          0.0
+        ],
+        [
+          56.96959026418228,
+          0.0
+        ],
+        [
+          58.15289855874444,
+          0.0
+        ],
+        [
+          59.80914674127502,
+          0.0
+        ],
+        [
+          61.465394923805604,
+          0.0
+        ],
+        [
+          63.12164310633619,
+          0.0
+        ],
+        [
+          67.96806599954927,
+          0.0
+        ],
+        [
+          69.17967172285253,
+          0.0
+        ],
+        [
+          71.60288316945908,
+          0.0
+        ],
+        [
+          74.02609461606562,
+          0.0
+        ],
+        [
+          76.44930606267216,
+          0.0
+        ],
+        [
+          82.05653011294073,
+          0.0
+        ],
+        [
+          87.6637541632093,
           0.0
         ],
         [
-          0.0014095582940420635,
+          93.27097821347787,
           0.0
         ],
         [
-          0.002819116588084127,
+          102.7701466845776,
           0.0
         ],
         [
-          0.005638233176168254,
+          112.26931515567732,
           0.0
         ],
         [
-          0.008457349764252381,
+          121.76848362677704,
           0.0
         ],
         [
-          0.011276466352336508,
+          131.26765209787678,
           0.0
         ],
         [
-          0.03946763223317778,
+          142.3439771582361,
           0.0
         ],
         [
-          0.04085528032083424,
+          153.42030221859542,
           0.0
         ],
         [
-          0.042242928408490706,
+          158.24761904761905,
           0.0
         ],
         [
-          0.045018224583803626,
+          158.36654057116988,
           0.0
         ],
         [
-          0.047793520759116546,
+          158.4854620947207,
           0.0
         ],
         [
-          0.05056881693442947,
+          159.74761904761905,
           0.0
         ],
         [
-          0.051535065794346184,
+          159.74948515317416,
           0.0
         ],
         [
-          0.0525013146542629,
+          159.75135125872927,
           0.0
         ],
         [
-          0.05443381237409633,
+          159.75508346983946,
           0.0
         ],
         [
-          0.056366310093929756,
+          159.75881568094965,
           0.0
         ],
         [
-          0.05829880781376318,
+          159.76254789205984,
           0.0
         ],
         [
-          0.06066778422868188,
+          159.78008817979105,
           0.0
         ],
         [
-          0.06303676064360057,
+          159.79762846752226,
           0.0
         ],
         [
-          0.06540573705851926,
+          159.81516875525347,
           0.0
         ],
         [
-          0.08909550120770625,
+          159.83270904298467,
           0.0
         ],
         [
-          0.09280001741842829,
+          159.85917311481012,
           0.0
         ],
         [
-          0.09574786203389758,
+          159.88563718663556,
           0.0
         ],
         [
-          0.09869570664936687,
+          159.912101258461,
           0.0
         ],
         [
-          0.10099207719472714,
+          159.93856533028645,
           0.0
         ],
         [
-          0.1032884477400874,
+          159.9650294021119,
           0.0
         ],
         [
-          0.10558481828544766,
+          160.01112136384918,
           0.0
         ],
         [
-          0.11017755937616817,
+          160.05721332558647,
           0.0
         ],
         [
-          0.11477030046688869,
+          160.10330528732376,
           0.0
         ],
         [
-          0.1193630415576092,
+          160.14939724906105,
           0.0
         ],
         [
-          0.13127045763130013,
+          160.19548921079834,
           0.0
         ],
         [
-          0.14317787370499105,
+          160.24158117253563,
           0.0
         ],
         [
-          0.14995992644651876,
+          160.3166327641328,
           0.0
         ],
         [
-          0.1542011028620784,
+          160.39168435572998,
           0.0
         ],
         [
-          0.15844227927763802,
+          160.46673594732715,
           0.0
         ],
         [
-          0.16268345569319764,
+          160.54178753892432,
           0.0
         ],
         [
-          0.1711658085243169,
+          160.6168391305215,
           0.0
         ],
         [
-          0.17964816135543615,
+          160.69189072211867,
           0.0
         ],
         [
-          0.1881305141865554,
+          160.81292628958846,
           0.0
         ],
         [
-          0.19446574773727407,
+          160.93396185705825,
           0.0
         ],
         [
-          0.20080098128799273,
+          161.05499742452804,
           0.0
         ],
         [
-          0.2056611859339936,
+          161.17603299199783,
           0.0
         ],
         [
-          0.21052139057999447,
+          161.29706855946762,
           0.0
         ],
         [
-          0.21538159522599534,
+          161.46985652170034,
           0.0
         ],
         [
-          0.22510200451799706,
+          161.64264448393305,
           0.0
         ],
         [
-          0.23482241380999877,
+          161.81543244616577,
           0.0
         ],
         [
-          0.24454282310200048,
+          161.9882204083985,
           0.0
         ],
         [
-          0.2542632323940022,
+          162.1610083706312,
           0.0
         ],
         [
-          0.35146732531401936,
+          162.38610275126362,
           0.0
         ],
         [
-          0.3632465986442917,
+          162.61119713189603,
           0.0
         ],
         [
-          0.3693545968582991,
-          -0.0002903960247907479
+          162.83629151252845,
+          0.0
+        ],
+        [
+          163.06138589316086,
+          0.0
+        ],
+        [
+          163.3001953672972,
+          0.0
+        ],
+        [
+          163.53900484143352,
+          0.0
+        ],
+        [
+          163.77781431556986,
+          0.0
+        ],
+        [
+          164.01699558831393,
+          0.0
+        ],
+        [
+          164.256176861058,
+          0.0
+        ],
+        [
+          164.49535813380209,
+          0.0
+        ],
+        [
+          164.73455176863084,
+          0.0
+        ],
+        [
+          165.96552936083825,
+          0.0
+        ],
+        [
+          167.19650695304566,
+          0.0
+        ],
+        [
+          168.42748454525307,
+          0.0
+        ],
+        [
+          172.0340398974043,
+          0.0
+        ],
+        [
+          175.64059524955556,
+          0.0
         ],
         [
-          0.37546259507230645,
-          -0.0005926061845089216
+          179.2471506017068,
+          0.0
+        ],
+        [
+          196.48491242496618,
+          0.0
         ],
         [
-          0.3876785915003212,
-          -0.0012327080213823745
+          213.72267424822556,
+          0.0
         ],
         [
-          0.39989458792833593,
-          -0.001919961861619172
+          230.96043607148493,
+          0.0
         ],
         [
-          0.4121105843563507,
-          -0.002654116526198688
+          256.216460721343,
+          0.0
         ],
         [
-          0.4714932108541475,
-          -0.006874690714535818
+          281.4724853712011,
+          0.0
         ],
         [
-          0.5078257800637102,
-          -0.00997009310755008
+          298.21839993404154,
+          0.0
+        ]
+      ],
+      "title": "\u03911 (Rad/S\u00b2) x Time (S)",
+      "inputs": [
+        "Time (s)"
+      ],
+      "outputs": [
+        "\u03b11 (rad/s\u00b2)"
+      ],
+      "interpolation": "spline",
+      "extrapolation": "zero",
+      "signature": {
+        "module": "rocketpy.mathutils.function",
+        "name": "Function",
+        "hash": 8532846655877
+      }
+    },
+    "alpha2": {
+      "source": [
+        [
+          0.0,
+          0.0
         ],
         [
-          0.5343429255049618,
-          -0.012453111882276546
+          0.00140955829402094,
+          0.0
         ],
         [
-          0.5608600709462134,
-          -0.015103941931557249
+          0.00281911658804188,
+          0.0
         ],
         [
-          0.587377216387465,
-          -0.01790029791711336
+          0.00563823317608376,
+          0.0
         ],
         [
-          0.6404115072699682,
-          -0.02381900135707558
+          0.00845734976412564,
+          0.0
         ],
         [
-          0.6934457981524714,
-          -0.029922865547893574
+          0.01127646635216752,
+          0.0
         ],
         [
-          0.7464800890349746,
-          -0.035835249662065534
+          0.039467632232586314,
+          0.0
         ],
         [
-          0.7995143799174779,
-          -0.04107706456462332
+          0.04085528032029989,
+          0.0
         ],
         [
-          0.8131556786423583,
-          -0.04224943345081888
+          0.04224292840801347,
+          0.0
         ],
         [
-          0.8267969773672387,
-          -0.04332791408681817
+          0.04501822458344063,
+          0.0
         ],
         [
-          0.8404382760921191,
-          -0.044302989856538966
+          0.047793520758867794,
+          0.0
         ],
         [
-          0.8773817713324279,
-          -0.04633955441072362
+          0.050568816934294956,
+          0.0
         ],
         [
-          0.9143252665727367,
-          -0.04731227890080711
+          0.051535065794208836,
+          0.0
         ],
         [
-          0.9512687618130455,
-          -0.04699608404241657
+          0.052501314654122715,
+          0.0
         ],
         [
-          0.9671044469204755,
-          -0.04640798001986904
+          0.05443381237395048,
+          0.0
         ],
         [
-          0.9987682629763311,
-          -0.0443592752325008
+          0.056366310093778245,
+          0.0
         ],
         [
-          1.0182059593067265,
-          -0.04246989749894396
+          0.05829880781360601,
+          0.0
         ],
         [
-          1.037643655637122,
-          -0.04007781365756085
+          0.06066778422864502,
+          0.0
         ],
         [
-          1.0570813519675175,
-          -0.037168954638277296
+          0.06303676064368403,
+          0.0
         ],
         [
-          1.0878522163238507,
-          -0.03150951756942122
+          0.06540573705872305,
+          0.0
         ],
         [
-          1.1186230806801838,
-          -0.02454976380381884
+          0.08909550120911316,
+          0.0
         ],
         [
-          1.1439344065815038,
-          -0.017871241614985774
+          0.09280001741983737,
+          0.0
         ],
         [
-          1.1692457324828238,
-          -0.010388885390374384
+          0.09574786203637055,
+          0.0
         ],
         [
-          1.1945570583841438,
-          -0.0021939489120331923
+          0.09869570665290373,
+          0.0
         ],
         [
-          1.2316667865519533,
-          0.010936768710142665
+          0.10099207719695144,
+          0.0
         ],
         [
-          1.2687765147197627,
-          0.02493782480195923
+          0.10328844774099916,
+          0.0
         ],
         [
-          1.3058862428875722,
-          0.03916299828233175
+          0.10558481828504687,
+          0.0
         ],
         [
-          1.3429959710553816,
-          0.05286693732341478
+          0.1101775593731423,
+          0.0
         ],
         [
-          1.4022433435144068,
-          0.07164693763097539
+          0.11477030046123773,
+          0.0
         ],
         [
-          1.447124093183637,
-          0.0813867735436183
+          0.11936304154933317,
+          0.0
         ],
         [
-          1.4920048428528674,
-          0.08560090544007679
+          0.1312706469438581,
+          0.0
         ],
         [
-          1.5261259080406766,
-          0.0842984302379773
+          0.14317825233838302,
+          0.0
         ],
         [
-          1.5602469732284858,
-          0.07874027316652156
+          0.1499601229088181,
+          0.0
         ],
         [
-          1.594368038416295,
-          0.06886489961524138
+          0.1542012180187087,
+          0.0
         ],
         [
-          1.6284891036041043,
-          0.05488848435276331
+          0.1584423131285993,
+          0.0
         ],
         [
-          1.6626101687919135,
-          0.037344259133267596
+          0.1626834082384899,
+          0.0
         ],
         [
-          1.6967312339797227,
-          0.01709344876185944
+          0.1711655984582711,
+          0.0
         ],
         [
-          1.730852299167532,
-          -0.004691373147754347
+          0.17964778867805228,
+          0.0
         ],
         [
-          1.770204581699234,
-          -0.02984414890553928
+          0.18812997889783348,
+          0.0
         ],
         [
-          1.809556864230936,
-          -0.05262887914346678
+          0.19446537171097383,
+          0.0
         ],
         [
-          1.8489091467626382,
-          -0.07045937420764997
+          0.20080076452411422,
+          0.0
         ],
         [
-          1.8882614292943403,
-          -0.08101608107060039
+          0.20566109450366143,
+          0.0
         ],
         [
-          1.9276137118260424,
-          -0.0825983874856207
+          0.21052142448320865,
+          0.0
         ],
         [
-          1.9669659943577444,
-          -0.07443854642146623
+          0.21538175446275587,
+          0.0
         ],
         [
-          2.0063182768894463,
-          -0.056931166761582
+          0.22510241442185028,
+          0.0
         ],
         [
-          2.0456705594211484,
-          -0.03176494447144589
+          0.23482307438094469,
+          0.0
         ],
         [
-          2.0850228419528505,
-          -0.0018714204432390214
+          0.2445437343400391,
+          0.0
         ],
         [
-          2.1243751244845526,
-          0.028845838391215944
+          0.2542643942991335,
+          0.0
         ],
         [
-          2.1637274070162547,
-          0.055981685435234414
+          0.3514709938900776,
+          0.0
         ],
         [
-          2.2030796895479567,
-          0.07529050253714938
+          0.36324670161934375,
+          0.0
         ],
         [
-          2.242431972079659,
-          0.0834093720771378
+          0.3693547037882063,
+          -1.0303724221870694e-06
         ],
         [
-          2.281784254611361,
-          0.07854541786505329
+          0.3754627059570688,
+          -2.1244320044291907e-06
         ],
         [
-          2.321136537143063,
-          0.060985343362537914
+          0.3876787102947939,
+          -4.487220196731822e-06
         ],
         [
-          2.360488819674765,
-          0.0333166367617852
+          0.39989471463251897,
+          -7.118761827765397e-06
         ],
         [
-          2.399841102206467,
-          0.00019058054374256647
+          0.41211071897024404,
+          -1.0029312813926565e-05
         ],
         [
-          2.4391933847381693,
-          -0.03237001667677414
+          0.47147904178591876,
+          -2.8445346320524795e-05
         ],
         [
-          2.4785456672698714,
-          -0.05806807543855409
+          0.5078212847273655,
+          -4.351925175282501e-05
         ],
         [
-          2.5178979498015734,
-          -0.07162550358430861
+          0.5343387025617514,
+          -5.6457128844874275e-05
         ],
         [
-          2.5572502323332755,
-          -0.06999994622453802
+          0.5608561203961373,
+          -7.106366888333656e-05
         ],
         [
-          2.5966025148649776,
-          -0.0532539078012301
+          0.5873735382305232,
+          -8.734550616781984e-05
         ],
         [
-          2.6359547973966797,
-          -0.02480835176725143
+          0.6404083738992948,
+          -0.00012482886187534958
         ],
         [
-          2.675307079928382,
-          0.00905827268266113
+          0.6934432095680665,
+          -0.00016826895530231995
         ],
         [
-          2.714659362460084,
-          0.04047438859224613
+          0.7464780452368381,
+          -0.0002163533409779906
         ],
         [
-          2.7466638251883717,
-          0.05871568658944848
+          0.7995128809056098,
+          -0.00026691541747155044
         ],
         [
-          2.7786682879166595,
-          0.06701302015418285
+          0.813164227469089,
+          -0.0002799777541470912
         ],
         [
-          2.8106727506449474,
-          0.06390684756716365
+          0.8268155740325682,
+          -0.0002929288842566451
         ],
         [
-          2.842677213373235,
-          0.04991659212416156
+          0.8404669205960474,
+          -0.0003057104156248282
         ],
         [
-          2.874681676101523,
-          0.02754651078579129
+          0.8775732859954444,
+          -0.0003390023380999117
         ],
         [
-          2.9108918137851214,
-          -0.002706807377589583
+          0.9146796513948413,
+          -0.0003688955813951757
         ],
         [
-          2.9402847513530936,
-          -0.0261107878463339
+          0.9517860167942382,
+          -0.00039356865051225204
         ],
         [
-          2.9637983886571173,
-          -0.041060445522857654
+          0.9674325642455079,
+          -0.0004019428307925437
         ],
         [
-          2.987312025961141,
-          -0.05100919255990091
+          0.9990075872778321,
+          -0.00041441044779834385
         ],
         [
-          2.9914721939592726,
-          -0.05216717013911369
+          1.0183793592598076,
+          -0.0004186233348519887
         ],
         [
-          2.995632361957404,
-          -0.053135688529790254
+          1.037751131241783,
+          -0.0004198780707323451
         ],
         [
-          2.9997925299555357,
-          -0.053913148081311486
+          1.0571229032237586,
+          -0.0004179342633580222
         ],
         [
-          3.0010806713261253,
-          -0.0541057141513895
+          1.0878788324799102,
+          -0.00040769616487782486
         ],
         [
-          3.002368812696715,
-          -0.05427942631928857
+          1.118634761736062,
+          -0.0003879516741018492
         ],
         [
-          3.0049450954378942,
-          -0.05455188659891501
+          1.1439443303803107,
+          -0.00036399602003621444
         ],
         [
-          3.0075213781790735,
-          -0.054751672771720925
+          1.1692538990245596,
+          -0.00033288047412580375
         ],
         [
-          3.031179520120233,
-          -0.05357337102819419
+          1.1945634676688084,
+          -0.00029456855854250477
         ],
         [
-          3.0548376620613924,
-          -0.046743088015287974
+          1.2316568052102488,
+          -0.00022528073865409163
         ],
         [
-          3.078495804002552,
-          -0.03522738120305487
+          1.2687501427516892,
+          -0.00014161006109074696
         ],
         [
-          3.1021539459437113,
-          -0.020432096444628237
+          1.3058434802931296,
+          -4.598943669018332e-05
         ],
         [
-          3.1205915242496687,
-          -0.007589952862918511
+          1.34293681783457,
+          5.804955344332102e-05
         ],
         [
-          3.139029102555626,
-          0.005366815204364429
+          1.4021386812930872,
+          0.0002299548042433264
         ],
         [
-          3.1574666808615834,
-          0.017549569414047818
+          1.447031703480718,
+          0.0003523762496462397
         ],
         [
-          3.1943418374734978,
-          0.03682050033948512
+          1.491924725668349,
+          0.0004544732218049066
         ],
         [
-          3.223214302746968,
-          0.04443298360613731
+          1.5260726318617992,
+          0.0005104468039886975
         ],
         [
-          3.252086768020438,
-          0.04411881845165199
+          1.5602205380552494,
+          0.0005419937494562697
         ],
         [
-          3.2809592332939084,
-          0.03627593759645758
+          1.5943684442486996,
+          0.0005450044613664986
         ],
         [
-          3.2861061530217075,
-          0.03415654881011033
+          1.6285163504421498,
+          0.0005167579435469163
         ],
         [
-          3.2912530727495066,
-          0.03186685712524604
+          1.6626642566356,
+          0.00045640466222153124
         ],
         [
-          3.2963999924773058,
-          0.0294240961207524
+          1.6968121628290502,
+          0.00036526491029990676
         ],
         [
-          3.3042992470019175,
-          0.025423797454932333
+          1.7309600690225004,
+          0.00024725748956413817
         ],
         [
-          3.312198501526529,
-          0.021165597702521813
+          1.770308643380365,
+          8.618700545944197e-05
         ],
         [
-          3.320097756051141,
-          0.016710776624658225
+          1.8096572177382295,
+          -8.853741929457482e-05
         ],
         [
-          3.329990894740742,
-          0.010959592943572601
+          1.849005792096094,
+          -0.0002594059716755495
         ],
         [
-          3.339884033430343,
-          0.005124666766053745
+          1.8883543664539586,
+          -0.00040724442229462735
         ],
         [
-          3.349777172119944,
-          -0.0006728976795692436
+          1.9277029408118231,
+          -0.0005136540204934254
         ],
         [
-          3.3683253555356067,
-          -0.0109245532460944
+          1.9670515151696877,
+          -0.0005633926663976522
         ],
         [
-          3.3868735389512694,
-          -0.019926622714668114
+          2.006400089527552,
+          -0.0005466212818318782
         ],
         [
-          3.4020443640890705,
-          -0.026017515743839682
+          2.0457486638854165,
+          -0.0004615194860443523
         ],
         [
-          3.4113407650123997,
-          -0.02906988012640067
+          2.085097238243281,
+          -0.00031547770818908207
         ],
         [
-          3.420637165935729,
-          -0.031528830303493224
+          2.124445812601145,
+          -0.0001254250819375025
         ],
         [
-          3.429933566859058,
-          -0.03336097159791651
+          2.1637943869590095,
+          8.342098104874461e-05
         ],
         [
-          3.446308281894537,
-          -0.035016958493298674
+          2.203142961316874,
+          0.0002806862502921398
         ],
         [
-          3.4626829969300164,
-          -0.03469866972869252
+          2.242491535674738,
+          0.00043512336884538743
         ],
         [
-          3.4790577119654955,
-          -0.03252521942844688
+          2.2818401100326025,
+          0.0005200837313316531
         ],
         [
-          3.5098113349838638,
-          -0.024512979685756796
+          2.3211886843904668,
+          0.000518438363483223
         ],
         [
-          3.534175816549051,
-          -0.015389040054388787
+          2.360537258748331,
+          0.00042738226731372375
         ],
         [
-          3.558540298114238,
-          -0.005097666277862002
+          2.3998858331061954,
+          0.0002603836386938005
         ],
         [
-          3.582904779679425,
-          0.0051640435712466464
+          2.4392344074640597,
+          4.6607403512043416e-05
         ],
         [
-          3.615075076269808,
-          0.017116856722550335
+          2.478582981821924,
+          -0.0001740088618854097
         ],
         [
-          3.6472453728601906,
-          0.024966117548395884
+          2.5179315561797884,
+          -0.00035749740661616014
         ],
         [
-          3.6794156694505733,
-          0.027160691535158682
+          2.5572801305376527,
+          -0.000465307320196878
         ],
         [
-          3.711585966040956,
-          0.023529093600601528
+          2.596628704895517,
+          -0.00047302231210708163
         ],
         [
-          3.7510748617223286,
-          0.012653967831502137
+          2.6359772792533813,
+          -0.00037715199731437176
         ],
         [
-          3.790563757403701,
-          -0.0017092151845930124
+          2.6753258536112456,
+          -0.0001977837010430482
         ],
         [
-          3.830052653085074,
-          -0.014550272573935505
+          2.71467442796911,
+          2.4250991407432372e-05
         ],
         [
-          3.862940498739986,
-          -0.02092147934565395
+          2.746682540487563,
+          0.00019886311154211075
         ],
         [
-          3.895828344394898,
-          -0.02217914293759188
+          2.778690653006016,
+          0.0003364267937024061
         ],
         [
-          3.901564462162616,
-          -0.021881599017640318
+          2.810698765524469,
+          0.0004132682735268505
         ],
         [
-          3.9073005799303346,
-          -0.02145104629664841
+          2.842706878042922,
+          0.00041587708694518135
         ],
         [
-          3.913036697698053,
-          -0.020888864618971995
+          2.874714990561375,
+          0.0003437405031147579
         ],
         [
-          3.924489906398398,
-          -0.01940502943057608
+          2.9109277644238576,
+          0.00018924098249496461
         ],
         [
-          3.935943115098743,
-          -0.017480931115551174
+          2.940339896156497,
+          3.1773944276900286e-05
         ],
         [
-          3.947396323799088,
-          -0.015179761610495508
+          2.9638563968017557,
+          -9.450503375728983e-05
         ],
         [
-          3.975516795322242,
-          -0.008591869292438974
+          2.9873728974470146,
+          -0.00020612063469578504
         ],
         [
-          4.003637266845396,
-          -0.0013808627545442446
+          2.991532758872659,
+          -0.00022338690555320662
         ],
         [
-          4.03175773836855,
-          0.005427875497534587
+          2.995692620298303,
+          -0.00023978858521383437
         ],
         [
-          4.071718134752553,
-          0.01302061390577889
+          2.999852481723947,
+          -0.00025525317333147335
         ],
         [
-          4.111678531136556,
-          0.01637534574468186
+          3.0011406359017885,
+          -0.00025979768273403216
         ],
         [
-          4.151638927520558,
-          0.01476761457712376
+          3.00242879007963,
+          -0.0002642466481769452
         ],
         [
-          4.191599323904561,
-          0.009032514423572757
+          3.0050050984353125,
+          -0.00027279198725814626
         ],
         [
-          4.247720558129715,
-          -0.0024697785508411064
+          3.007581406790995,
+          -0.0002809063392349501
         ],
         [
-          4.293788946145795,
-          -0.010837023809798793
+          3.0312400452524226,
+          -0.000336698936201098
         ],
         [
-          4.3319865166419085,
-          -0.01420565900786138
+          3.05489868371385,
+          -0.00035440364072068223
         ],
         [
-          4.370184087138022,
-          -0.013529724808883157
+          3.0785573221752776,
+          -0.0003346215594526757
         ],
         [
-          4.408381657634136,
-          -0.0093996894987427
+          3.102215960636705,
+          -0.00028035175656992403
         ],
         [
-          4.44657922813025,
-          -0.003278944926703219
+          3.120664542586555,
+          -0.00021909065204997767
         ],
         [
-          4.484776798626363,
-          0.0030292765492234974
+          3.139113124536405,
+          -0.00014482808102019425
         ],
         [
-          4.527459427885128,
-          0.008334064397023931
+          3.1575617064862547,
+          -6.436623896925535e-05
         ],
         [
-          4.570142057143892,
-          0.01038588254383589
+          3.194458870385954,
+          9.780440519657138e-05
         ],
         [
-          4.612824686402656,
-          0.00884577145375424
+          3.2233916577517485,
+          0.00020198913353633986
         ],
         [
-          4.655507315661421,
-          0.0045435935396152625
+          3.252324445117543,
+          0.00026608335527032
         ],
         [
-          4.698189944920185,
-          -0.0009205989713511451
+          3.2812572324833376,
+          0.0002806661984588664
         ],
         [
-          4.752240597633832,
-          -0.006869569335130276
+          3.2864042093564865,
+          0.00027747406204168504
         ],
         [
-          4.806291250347479,
-          -0.009231950669109782
+          3.2915511862296354,
+          0.000272704502469766
         ],
         [
-          4.8603419030611255,
-          -0.007185423149941794
+          3.2966981631027843,
+          0.0002667579932635572
         ],
         [
-          4.914392555774772,
-          -0.0020520112515197146
+          3.3044731976480057,
+          0.0002547182882930825
         ],
         [
-          4.968443208488419,
-          0.003501718495048762
+          3.312248232193227,
+          0.00023954704239117082
         ],
         [
-          5.022493861202066,
-          0.006827621534520427
+          3.3200232667384486,
+          0.00022147132366294778
         ],
         [
-          5.076544513915713,
-          0.006530483080134997
+          3.3299608976332786,
+          0.0001949193716089065
         ],
         [
-          5.13059516662936,
-          0.0030069821994638092
+          3.3398985285281086,
+          0.00016482413230825866
         ],
         [
-          5.1846458193430065,
-          -0.0018937610775153558
+          3.3498361594229387,
+          0.0001320739102228876
         ],
         [
-          5.238696472056653,
-          -0.005845550995216497
+          3.3684063767347974,
+          6.659873976057615e-05
         ],
         [
-          5.2927471247703,
-          -0.0071432998185599434
+          3.386976594046656,
+          -3.683331805902956e-07
         ],
         [
-          5.342460668455986,
-          -0.005729949709021106
+          3.4020328166662903,
+          -5.3166458930628904e-05
         ],
         [
-          5.392174212141671,
-          -0.0025647438736666733
+          3.4113057466050263,
+          -8.397792521446239e-05
         ],
         [
-          5.441887755827357,
-          0.0011399343248980362
+          3.4205786765437622,
+          -0.00011270111255934352
         ],
         [
-          5.491601299513042,
-          0.004116407555469791
+          3.429851606482498,
+          -0.00013874823705082987
         ],
         [
-          5.554603109165186,
-          0.0055640864347860745
+          3.4462125806335115,
+          -0.00017684285231105113
         ],
         [
-          5.617604918817331,
-          0.004017183704249669
+          3.462573554784525,
+          -0.0002038820810370597
         ],
         [
-          5.6677507107483684,
-          0.001123539869921893
+          3.4789345289355382,
+          -0.00021891315126741832
         ],
         [
-          5.717896502679406,
-          -0.002163045751378196
+          3.5099101021393686,
+          -0.0002150708715769974
         ],
         [
-          5.768042294610444,
-          -0.004760073837541946
+          3.5343946919875657,
+          -0.00018535150784930777
         ],
         [
-          5.818188086541482,
-          -0.00585474295710165
+          3.558879281835763,
+          -0.0001368204098145337
         ],
         [
-          5.878315251829882,
-          -0.004889865754947562
+          3.58336387168396,
+          -7.575993628902764e-05
         ],
         [
-          5.928299499698518,
-          -0.0025322106514393972
+          3.6154318916074843,
+          1.2254177156201165e-05
         ],
         [
-          5.978283747567154,
-          0.00035660649552660297
+          3.6474999115310087,
+          9.279992030335348e-05
         ],
         [
-          6.02826799543579,
-          0.002829294794562078
+          3.679567931454533,
+          0.0001484669832777434
         ],
         [
-          6.078252243304426,
-          0.0041260709814052105
+          3.7116359513780575,
+          0.00016931959365623406
         ],
         [
-          6.14293081584079,
-          0.0036971537374991485
+          3.750677226849746,
+          0.00014441324558828623
         ],
         [
-          6.196765840796611,
-          0.0017423839548969206
+          3.789718502321435,
+          7.414767134368532e-05
         ],
         [
-          6.250600865752432,
-          -0.0008847532905176667
+          3.8287597777931235,
+          -1.492150938324447e-05
         ],
         [
-          6.304435890708253,
-          -0.00330085505908705
+          3.867801053264812,
+          -9.309493128392847e-05
         ],
         [
-          6.3582709156640735,
-          -0.004780411176891764
+          3.906842328736501,
+          -0.00013641082079556027
         ],
         [
-          6.433461438883678,
-          -0.004734196031332803
+          3.9127975041938576,
+          -0.00013902754971574152
         ],
         [
-          6.493499513622796,
-          -0.002963517829845509
+          3.9187526796512144,
+          -0.00014063131862586823
         ],
         [
-          6.553537588361913,
-          -0.0004400002951935611
+          3.9247078551085712,
+          -0.00014124035259917514
         ],
         [
-          6.613575663101031,
-          0.0018756891795329955
+          3.9366182060232844,
+          -0.00013958760818576416
         ],
         [
-          6.6736137378401486,
-          0.003172306165854718
+          3.9485285569379975,
+          -0.00013426705509938722
         ],
         [
-          6.752474107792829,
-          0.002853661751022444
+          3.9604389078527107,
+          -0.00012555792145883249
         ],
         [
-          6.813959694855546,
-          0.0011217188999476588
+          3.9894733064604,
+          -9.244620196373755e-05
         ],
         [
-          6.875445281918263,
-          -0.0011943288448507275
+          4.018507705068089,
+          -4.765907417096471e-05
         ],
         [
-          6.93693086898098,
-          -0.0032541186575674188
+          4.047542103675778,
+          1.0648186698923876e-06
         ],
         [
-          6.998416456043697,
-          -0.004327487764325076
+          4.0765765022834675,
+          4.5890600197226205e-05
         ],
         [
-          7.079711027784927,
-          -0.003802122127479539
+          4.119155795005119,
+          9.172817076325128e-05
         ],
         [
-          7.1413765714336215,
-          -0.0020796808152808025
+          4.16173508772677,
+          0.00010343613356993256
         ],
         [
-          7.203042115082316,
-          8.535204164290639e-05
+          4.1691207712068685,
+          0.00010131072489933953
         ],
         [
-          7.264707658731011,
-          0.0019433131553653674
+          4.176506454686967,
+          9.809419726401095e-05
         ],
         [
-          7.326373202379705,
-          0.0028645531982028015
+          4.1838921381670655,
+          9.386033209633735e-05
         ],
         [
-          7.4088916340702395,
-          0.0022019688083010805
+          4.1986635051272625,
+          8.286642203603161e-05
         ],
         [
-          7.471438984396619,
-          0.0003828723368551342
+          4.2134348720874595,
+          6.895635999080792e-05
         ],
         [
-          7.533986334722999,
-          -0.0018541139947659741
+          4.2282062390476565,
+          5.2839101577426185e-05
         ],
         [
-          7.596533685049379,
-          -0.0035899475374076765
+          4.264323210631898,
+          7.92306204522081e-06
         ],
         [
-          7.659081035375759,
-          -0.0039617306770639085
+          4.300440182216139,
+          -3.644664656014973e-05
         ],
         [
-          7.748666795076123,
-          -0.001400760523735936
+          4.33655715380038,
+          -7.052654280327953e-05
         ],
         [
-          7.759103537845691,
-          -0.0008918680980172607
+          4.372674125384622,
+          -8.764423322189208e-05
         ],
         [
-          7.769540280615259,
-          -0.00039487726948742377
+          4.416044435312633,
+          -8.199581343354368e-05
         ],
         [
-          7.779977023384827,
-          8.91808371237368e-05
+          4.459414745240645,
+          -5.125942771804429e-05
         ],
         [
-          7.800850508923962,
-          0.0009994251999161116
+          4.502785055168657,
+          -7.525295967103648e-06
         ],
         [
-          7.821723994463097,
-          0.0018109278665729542
+          4.546155365096668,
+          3.355719644896395e-05
         ],
         [
-          7.842597480002232,
-          0.002498409578124128
+          4.58952567502468,
+          5.847781574022919e-05
         ],
         [
-          7.900172892552435,
-          0.0036407072302258076
+          4.632895984952691,
+          6.036461147502e-05
         ],
         [
-          7.957748305102638,
-          0.003553970536917742
+          4.676266294880703,
+          4.051727930517078e-05
         ],
         [
-          8.01532371765284,
-          0.002345222094255591
+          4.719636604808715,
+          7.406670076432794e-06
         ],
         [
-          8.072899130203044,
-          0.0004171306162327901
+          4.768224902129621,
+          -3.09428263308513e-05
         ],
         [
-          8.14886572486838,
-          -0.0023075652110769356
+          4.816813199450527,
+          -5.610809933359254e-05
         ],
         [
-          8.224832319533714,
-          -0.00417810552529186
+          4.865401496771433,
+          -5.969304254998497e-05
         ],
         [
-          8.30079891419905,
-          -0.004426231064693867
+          4.913989794092339,
+          -4.238167592041775e-05
         ],
         [
-          8.376765508864384,
-          -0.0030641663317008397
+          4.962578091413246,
+          -1.2666743347828958e-05
         ],
         [
-          8.45273210352972,
-          -0.0008204342595160418
+          5.016300880486902,
+          2.2376334191984653e-05
         ],
         [
-          8.5564809550127,
-          0.0019417960537234115
+          5.070023669560559,
+          4.5736763111481677e-05
         ],
         [
-          8.632458997358304,
-          0.00249330692208511
+          5.123746458634216,
+          6.072579236413909e-05
         ],
         [
-          8.708437039703908,
-          0.001528312570222917
+          5.177469247707872,
+          4.854038034861217e-05
         ],
         [
-          8.784415082049511,
-          -0.00047652421626514867
+          5.219601255563254,
+          6.360392945742638e-05
         ],
         [
-          8.860393124395115,
-          -0.002556255653088397
+          5.261733263418636,
+          9.316202424082513e-05
         ],
         [
-          8.936371166740718,
-          -0.0037423762513264388
+          5.3038652712740175,
+          0.00011263114227017614
         ],
         [
-          9.012349209086322,
-          -0.0035581493708867337
+          5.345997279129399,
+          0.00010364021505393816
         ],
         [
-          9.088327251431926,
-          -0.002191536917182383
+          5.388129286984781,
+          6.302385703391151e-05
         ],
         [
-          9.16430529377753,
-          -0.00034483675781313115
+          5.438594166103664,
+          -7.79169461432483e-06
         ],
         [
-          9.255988954542772,
-          0.001364945232733711
+          5.489059045222548,
+          -7.050104894609489e-05
         ],
         [
-          9.329184490076974,
-          0.0016164210373066726
+          5.539523924341431,
+          -9.772749349960747e-05
         ],
         [
-          9.402380025611176,
-          0.0008461494233716275
+          5.589988803460314,
+          -8.273853652190959e-05
         ],
         [
-          9.475575561145378,
-          -0.000554142412704423
+          5.6404536825791975,
+          -3.9727591029652825e-05
         ],
         [
-          9.54877109667958,
-          -0.0019813177519590395
+          5.690918561698081,
+          8.328776634002699e-06
         ],
         [
-          9.621966632213782,
-          -0.0028772154778204193
+          5.741383440816964,
+          4.304774407879827e-05
         ],
         [
-          9.69992497595067,
-          -0.0030063628393970656
+          5.7918483199358475,
+          5.6301541548169456e-05
         ],
         [
-          9.77788331968756,
-          -0.0023488694218297083
+          5.842313199054731,
+          4.851845203110169e-05
         ],
         [
-          9.855841663424448,
-          -0.0012228120802091982
+          5.900175444574162,
+          2.0542406795069785e-05
         ],
         [
-          9.933800007161336,
-          -5.8286348675012085e-05
+          5.958037690093594,
+          -1.518444850796166e-05
         ],
         [
-          10.011758350898225,
-          0.0007461737126100384
+          6.015899935613025,
+          -4.40967801506453e-05
         ],
         [
-          10.089716694635113,
-          0.0009379050977240964
+          6.073762181132457,
+          -5.5330502939523253e-05
         ],
         [
-          10.167675038372002,
-          0.000501011913586156
+          6.1316244266518884,
+          -4.5998716928510125e-05
         ],
         [
-          10.260259956542143,
-          -0.0004886094268159455
+          6.18948667217132,
+          -2.1863075986178562e-05
         ],
         [
-          10.331983881553601,
-          -0.0013794024839276487
+          6.2473489176907515,
+          5.787298345426083e-06
         ],
         [
-          10.403707806565059,
-          -0.0021391538581916852
+          6.305211163210183,
+          2.5413066657158843e-05
         ],
         [
-          10.475431731576517,
-          -0.0026233191910994625
+          6.374869724777001,
+          3.0337554636239508e-05
         ],
         [
-          10.570210949134573,
-          -0.002752728217819463
+          6.44452828634382,
+          1.4854225872168844e-05
         ],
         [
-          10.664990166692629,
-          -0.0022612249068021135
+          6.514186847910638,
+          -1.1272984491786324e-05
         ],
         [
-          10.759769384250685,
-          -0.001352614362202073
+          6.583845409477457,
+          -3.4319475420887704e-05
         ],
         [
-          10.854548601808741,
-          -0.00040218038242465946
+          6.653503971044275,
+          -4.334893127146312e-05
         ],
         [
-          10.949327819366797,
-          0.00021323073153190812
+          6.723162532611093,
+          -3.502176153619477e-05
         ],
         [
-          11.044107036924853,
-          0.00026171658156710995
+          6.792821094177912,
+          -1.4400502107365073e-05
         ],
         [
-          11.138886254482909,
-          -0.00026344171596940415
+          6.856149583247434,
+          4.986862387443143e-06
         ],
         [
-          11.223078569708694,
-          -0.0010078997286006542
+          6.919478072316956,
+          1.782419248906048e-05
         ],
         [
-          11.307270884934479,
-          -0.0017743077358099433
+          6.982806561386478,
+          2.0738992504610497e-05
         ],
         [
-          11.391463200160263,
-          -0.0023719008889082575
+          7.046135050456,
+          1.4071273265527437e-05
         ],
         [
-          11.526298565803183,
-          -0.002751701839128115
+          7.109463539525522,
+          1.107819180681347e-06
         ],
         [
-          11.629928166907957,
-          -0.0024358701631490127
+          7.172792028595044,
+          -1.3382118183085725e-05
         ],
         [
-          11.733557768012732,
-          -0.0017328172732809888
+          7.236120517664566,
+          -2.482781324162198e-05
         ],
         [
-          11.837187369117506,
-          -0.0009348616069157005
+          7.299449006734088,
+          -3.0201144443513934e-05
         ],
         [
-          11.940816970222281,
-          -0.00036161413706506027
+          7.36277749580361,
+          -2.868794312058155e-05
         ],
         [
-          12.064752353445058,
-          -0.0002564164333590587
+          7.441907419493829,
+          -1.928778081541545e-05
         ],
         [
-          12.188687736667836,
-          -0.0007771209345469175
+          7.521037343184047,
+          -7.3899940582309315e-06
         ],
         [
-          12.312623119890613,
-          -0.001645857226621423
+          7.600167266874266,
+          1.4068882236845434e-06
         ],
         [
-          12.43655850311339,
-          -0.0024607494700764187
+          7.696303025687341,
+          4.826234250856491e-06
         ],
         [
-          12.560493886336168,
-          -0.0028825922797418653
+          7.7924387845004155,
+          -1.2908473780573874e-06
         ],
         [
-          12.684429269558946,
-          -0.002776392765425915
+          7.88857454331349,
+          -1.2577727252696783e-05
         ],
         [
-          12.808364652781723,
-          -0.0022462977846538566
+          7.984710302126565,
+          -2.1526901408819268e-05
         ],
         [
-          12.831782867710663,
-          -0.00211310504524508
+          8.08084606093964,
+          -2.2886678569120176e-05
         ],
         [
-          12.855201082639603,
-          -0.0019784775004341513
+          8.176981819752715,
+          -1.6580391246707545e-05
         ],
         [
-          12.878619297568543,
-          -0.0018453420868053555
+          8.27311757856579,
+          -7.113511426687316e-06
         ],
         [
-          12.925455727426423,
-          -0.00159614431885462
+          8.374791072592975,
+          -4.6644292667664016e-07
         ],
         [
-          12.972292157284302,
-          -0.0013800857500736964
+          8.47646456662016,
+          1.5522972914407766e-06
         ],
         [
-          13.019128587142182,
-          -0.0012096562671803548
+          8.578138060647346,
+          -1.3684419063380617e-06
         ],
         [
-          13.153906925069139,
-          -0.001016712042247338
+          8.679811554674531,
+          -7.217994954534342e-06
         ],
         [
-          13.288685262996095,
-          -0.001283737367882564
+          8.781485048701716,
+          -1.3246181322501303e-05
         ],
         [
-          13.423463600923052,
-          -0.001872715879970064
+          8.883158542728902,
+          -1.752602202219673e-05
         ],
         [
-          13.558241938850008,
-          -0.002520425650047361
+          9.00524652036951,
+          -1.9549065392220358e-05
         ],
         [
-          13.693020276776965,
-          -0.0029688180141900704
+          9.12733449801012,
+          -1.7365367408553838e-05
         ],
         [
-          13.827798614703921,
-          -0.003073491384313135
+          9.249422475650729,
+          -1.264114488434402e-05
         ],
         [
-          13.962576952630878,
-          -0.002848766295382904
+          9.371510453291338,
+          -7.572149428347317e-06
         ],
         [
-          14.097355290557834,
-          -0.0024422750980895363
+          9.493598430931947,
+          -3.5555936826148083e-06
         ],
         [
-          14.23213362848479,
-          -0.0020601554511532486
+          9.615686408572556,
+          -1.999942362141584e-06
         ],
         [
-          14.366911966411747,
-          -0.001879692674383597
+          9.638495054883064,
+          -2.2449923028546e-06
         ],
         [
-          14.54025856584105,
-          -0.002036198015917699
+          9.661303701193573,
+          -2.782271781687038e-06
         ],
         [
-          14.682392980564643,
-          -0.0024605114357042304
+          9.684112347504081,
+          -3.614863704920894e-06
         ],
         [
-          14.824527395288236,
-          -0.0029906230369833656
+          9.729729640125099,
+          -6.003899261077651e-06
         ],
         [
-          14.966661810011828,
-          -0.003454009035989108
+          9.775346932746116,
+          -9.08250650589046e-06
         ],
         [
-          15.108796224735421,
-          -0.003726592590398656
+          9.820964225367133,
+          -1.2477587103503374e-05
         ],
         [
-          15.286616031474669,
-          -0.0037670270682777247
+          9.921906879777866,
+          -1.8908116453251938e-05
         ],
         [
-          15.464435838213916,
-          -0.0035546544795454285
+          10.004312108890508,
+          -2.2155909576827327e-05
         ],
         [
-          15.642255644953163,
-          -0.003287539408866567
+          10.08671733800315,
+          -2.291780847996935e-05
         ],
         [
-          15.82007545169241,
-          -0.0031737392824486483
+          10.16912256711579,
+          -2.1397394433410923e-05
         ],
         [
-          15.997895258431658,
-          -0.0033427038676225223
+          10.318508402311611,
+          -1.5650521201983415e-05
         ],
         [
-          16.175715065170905,
-          -0.0037949133939305353
+          10.416310959001898,
+          -1.1737473180887708e-05
         ],
         [
-          16.353534871910153,
-          -0.004410498278950181
+          10.514113515692184,
+          -9.989507582769304e-06
         ],
         [
-          16.5313546786494,
-          -0.005011685468754319
+          10.61191607238247,
+          -1.0989015112345118e-05
         ],
         [
-          16.709174485388647,
-          -0.005444001664874434
+          10.709718629072757,
+          -1.416944031909467e-05
         ],
         [
-          16.886994292127895,
-          -0.005638125276260673
+          10.84073505366698,
+          -1.9064439814658325e-05
         ],
         [
-          17.0827216691956,
-          -0.005626261642895808
+          10.935791309767657,
+          -2.1747125261384483e-05
         ],
         [
-          17.245756216665097,
-          -0.005537710067105608
+          11.030847565868333,
+          -2.266196830121324e-05
         ],
         [
-          17.408790764134594,
-          -0.0055069332038308735
+          11.12590382196901,
+          -2.1840774161274926e-05
         ],
         [
-          17.57182531160409,
-          -0.005631905526089583
+          11.220960078069686,
+          -1.9928693759207e-05
         ],
         [
-          17.734859859073588,
-          -0.005960789317860119
+          11.34293278943959,
+          -1.735429103989663e-05
         ],
         [
-          17.87633414755382,
-          -0.006393593300300441
+          11.4367198655186,
+          -1.6177872758317335e-05
         ],
         [
-          17.989632326456782,
-          -0.006811864683179314
+          11.530506941597611,
+          -1.6207449819188058e-05
         ],
         [
-          18.102930505359744,
-          -0.0072612932255191965
+          11.624294017676622,
+          -1.7467633322284848e-05
         ],
         [
-          18.216228684262706,
-          -0.007718078023801472
+          11.718081093755632,
+          -1.959042240696864e-05
         ],
         [
-          18.392123725075212,
-          -0.008418173668440006
+          11.830682395509069,
+          -2.2364125944342423e-05
         ],
         [
-          18.568018765887718,
-          -0.009055556456710323
+          11.943283697262505,
+          -2.447155006454025e-05
         ],
         [
-          18.743913806700224,
-          -0.00960261673698025
+          12.055884999015941,
+          -2.532001841272284e-05
         ],
         [
-          18.91980884751273,
-          -0.01007746165246073
+          12.168486300769377,
+          -2.489788613087105e-05
         ],
         [
-          19.13456671816614,
-          -0.010622831314391427
+          12.29994439393496,
+          -2.3548516456117458e-05
         ],
         [
-          19.349324588819552,
-          -0.011226431422402707
+          12.404633593778348,
+          -2.24622837359334e-05
         ],
         [
-          19.564082459472964,
-          -0.011982590278813047
+          12.509322793621736,
+          -2.1987231050388604e-05
         ],
         [
-          19.778840330126375,
-          -0.012940821701526384
+          12.614011993465125,
+          -2.2413082621131444e-05
         ],
         [
-          19.993598200779786,
-          -0.014100882958655695
+          12.718701193308513,
+          -2.3708588384981054e-05
         ],
         [
-          20.208356071433197,
-          -0.015431164058773124
+          12.865684810686352,
+          -2.6268627840533797e-05
         ],
         [
-          20.42311394208661,
-          -0.016894893762033982
+          12.973565119592086,
+          -2.821484786162706e-05
         ],
         [
-          20.63787181274002,
-          -0.018469685922120452
+          13.08144542849782,
+          -2.9715840125733605e-05
         ],
         [
-          20.89524769419444,
-          -0.020501820177301806
+          13.189325737403555,
+          -3.0545723580208324e-05
         ],
         [
-          21.152623575648857,
-          -0.022720635536303595
+          13.29720604630929,
+          -3.071884218601766e-05
         ],
         [
-          21.409999457103275,
-          -0.02517666276490581
+          13.455915925693203,
+          -3.033588924679039e-05
         ],
         [
-          21.667375338557694,
-          -0.027919874907706768
+          13.572668910835402,
+          -2.9996478547281485e-05
         ],
         [
-          21.924751220012112,
-          -0.030988443061645728
+          13.6894218959776,
+          -3.0077638229189032e-05
         ],
         [
-          22.18212710146653,
-          -0.034412748963501404
+          13.8061748811198,
+          -3.082570842945317e-05
         ],
         [
-          22.469164792221026,
-          -0.03869026097306079
+          13.922927866261999,
+          -3.2250204486310884e-05
         ],
         [
-          22.75620248297552,
-          -0.04349284388581602
+          14.085961813353116,
+          -3.489102247684924e-05
         ],
         [
-          23.043240173730016,
-          -0.048856030352974776
+          14.204687031875425,
+          -3.6937987737445765e-05
         ],
         [
-          23.33027786448451,
-          -0.054801777755799266
+          14.323412250397734,
+          -3.868831995886604e-05
         ],
         [
-          23.617315555239006,
-          -0.06133631493826484
+          14.442137468920043,
+          -3.993389609191991e-05
         ],
         [
-          23.9043532459935,
-          -0.0684534964636474
+          14.560862687442352,
+          -4.066215040402198e-05
         ],
         [
-          24.191390936747997,
-          -0.07614208224619719
+          14.727812813776477,
+          -4.118429880639955e-05
         ],
         [
-          24.419341542299552,
-          -0.08264955262045359
+          14.852763845864722,
+          -4.1518950607182724e-05
         ],
         [
-          24.647292147851108,
-          -0.08951476564942361
+          14.977714877952966,
+          -4.2170270098595465e-05
         ],
         [
-          24.875242753402663,
-          -0.09674449591650684
+          15.10266591004121,
+          -4.335064275436971e-05
         ],
         [
-          25.10319335895422,
-          -0.10434169440360579
+          15.227616942129455,
+          -4.510595284044288e-05
         ],
         [
-          25.331143964505774,
-          -0.11228259932166036
+          15.39474055277627,
+          -4.810562560554981e-05
         ],
         [
-          25.51872139829633,
-          -0.11900999710741726
+          15.526750000917001,
+          -5.0747484169373614e-05
         ],
         [
-          25.706298832086883,
-          -0.12578079590900954
+          15.658759449057733,
+          -5.330927131009379e-05
         ],
         [
-          25.884966627110675,
-          -0.13205663974816415
+          15.790768897198465,
+          -5.557697782682955e-05
         ],
         [
-          25.88571428571429,
-          -0.13208211317179483
+          15.922778345339196,
+          -5.747090852955005e-05
         ],
         [
-          25.891724887187262,
-          -0.1322851211001992
+          16.079671368014623,
+          -5.935567313037403e-05
         ],
         [
-          25.897735488660235,
-          -0.1324875478337335
+          16.23656439069005,
+          -6.111795628950562e-05
         ],
         [
-          25.909756691606184,
-          -0.1328934987398398
+          16.393457413365475,
+          -6.309559345253966e-05
         ],
         [
-          25.921777894552132,
-          -0.13329693966935477
+          16.5503504360409,
+          -6.555556330478933e-05
         ],
         [
-          25.93379909749808,
-          -0.13369773613701463
+          16.72307251287968,
+          -6.898771917360762e-05
         ],
         [
-          26.05401112695755,
-          -0.13752834485555648
+          16.895794589718456,
+          -7.313757271030663e-05
         ],
         [
-          26.17422315641702,
-          -0.14091783157557164
+          17.068516666557233,
+          -7.775970455524341e-05
         ],
         [
-          26.29443518587649,
-          -0.1436638662950564
+          17.24123874339601,
+          -8.255289645593011e-05
         ],
         [
-          26.41464721533596,
-          -0.14551735759076326
+          17.413960820234788,
+          -8.730877950607582e-05
         ],
         [
-          26.590536971802308,
-          -0.1459857027005889
+          17.60482627556807,
+          -9.248796991154767e-05
         ],
         [
-          26.766426728268655,
-          -0.14275863144613019
+          17.79569173090135,
+          -9.773227015323659e-05
         ],
         [
-          26.942316484735002,
-          -0.13448018340717288
+          17.98655718623463,
+          -0.0001033254940461964
         ],
         [
-          27.11820624120135,
-          -0.1196100790869798
+          18.17742264156791,
+          -0.00010954799781184033
         ],
         [
-          27.294095997667696,
-          -0.0965059985759295
+          18.368288096901193,
+          -0.00011657145253986545
         ],
         [
-          27.38571428571429,
-          -0.08066777104967399
+          18.559153552234473,
+          -0.00012443960727854915
         ],
         [
-          27.403707346930535,
-          0.0
+          18.750019007567754,
+          -0.00013310795225951542
         ],
         [
-          27.42170040814678,
-          0.0
+          18.940884462901035,
+          -0.00014250707987759024
         ],
         [
-          27.457686530579274,
-          0.0
+          19.160009857916293,
+          -0.000154156346493008
         ],
         [
-          27.493672653011767,
-          0.0
+          19.37913525293155,
+          -0.0001667642338497639
         ],
         [
-          27.52965877544426,
-          0.0
+          19.59826064794681,
+          -0.00018046969891186742
         ],
         [
-          27.722358182653522,
-          0.0
+          19.817386042962067,
+          -0.0001954763624920647
         ],
         [
-          27.915057589862784,
-          0.0
+          20.036511437977325,
+          -0.00021201095527454423
         ],
         [
-          28.107756997072045,
-          0.0
+          20.343119545325326,
+          -0.00023809872922911306
         ],
         [
-          28.300456404281306,
-          0.0
+          20.649727652673327,
+          -0.00026814839015673245
         ],
         [
-          28.59167900359794,
-          0.0
+          20.95633576002133,
+          -0.00030272692431412585
         ],
         [
-          28.882901602914572,
-          0.0
+          21.26294386736933,
+          -0.00034242236065853374
         ],
         [
-          29.174124202231205,
-          0.0
+          21.56955197471733,
+          -0.00038786701792176793
         ],
         [
-          29.465346801547838,
-          0.0
+          21.876160082065333,
+          -0.00043974184017933355
         ],
         [
-          29.75656940086447,
-          0.0
+          22.182768189413334,
+          -0.0004987559490264599
         ],
         [
-          30.25579246872472,
-          0.0
+          22.489376296761336,
+          -0.0005656037185836212
         ],
         [
-          30.75501553658497,
-          0.0
+          22.837549744359293,
+          -0.000651798893612255
         ],
         [
-          31.25423860444522,
-          0.0
+          23.18572319195725,
+          -0.0007495881976678991
         ],
         [
-          31.75346167230547,
-          0.0
+          23.53389663955521,
+          -0.0008593085025770463
         ],
         [
-          32.25268474016572,
-          0.0
+          23.882070087153167,
+          -0.0009809547274916236
         ],
         [
-          32.75190780802597,
-          0.0
+          24.230243534751125,
+          -0.001114320350916163
         ],
         [
-          33.48826295234864,
-          0.0
+          24.578416982349083,
+          -0.0012592448696386207
         ],
         [
-          34.224618096671314,
-          0.0
+          24.92659042994704,
+          -0.0014158020151419958
         ],
         [
-          34.96097324099399,
-          0.0
+          25.274763877545,
+          -0.0015837128023682076
         ],
         [
-          35.69732838531666,
-          0.0
+          25.544320922023445,
+          -0.0017194876514974504
         ],
         [
-          36.43368352963933,
-          0.0
+          25.81387796650189,
+          -0.0018545075091728944
         ],
         [
-          37.18331742700439,
-          0.0
+          25.885098654500275,
+          -0.0018886704895411317
         ],
         [
-          37.93295132436945,
-          0.0
+          25.88571428571429,
+          -0.0018889609486768563
         ],
         [
-          38.682585221734506,
-          0.0
+          25.891725275535915,
+          -0.0018917701912880471
         ],
         [
-          39.432219119099564,
-          0.0
+          25.89773626535754,
+          -0.00189457036416149
         ],
         [
-          40.18185301646462,
-          0.0
+          25.90975824500079,
+          -0.0019001852570475555
         ],
         [
-          41.55565606299418,
-          0.0
+          25.921780224644042,
+          -0.0019057611405268538
         ],
         [
-          42.92945910952374,
-          0.0
+          25.933802204287293,
+          -0.0019112960425143445
         ],
         [
-          44.3032621560533,
-          0.0
+          26.05402200071982,
+          -0.001963923643295725
         ],
         [
-          45.67706520258286,
-          0.0
+          26.174241797152344,
+          -0.002009869351080838
         ],
         [
-          47.05086824911242,
-          0.0
+          26.29446159358487,
+          -0.002046183164946999
         ],
         [
-          48.62323521534373,
-          0.0
+          26.414681390017396,
+          -0.002069243174726518
         ],
         [
-          50.19560218157505,
-          0.0
+          26.59056092778596,
+          -0.002069890409689716
         ],
         [
-          51.76796914780636,
-          0.0
+          26.76644046555452,
+          -0.002016338026752206
         ],
         [
-          53.340336114037676,
-          0.0
+          26.942320003323083,
+          -0.0018890394182841412
         ],
         [
-          54.91270308026899,
-          0.0
+          27.118199541091645,
+          -0.0016658671858565159
         ],
         [
-          55.86204148248446,
-          0.0
+          27.294079078860207,
+          -0.0013233292370143487
         ],
         [
-          56.811379884699925,
-          0.0
+          27.38571428571429,
+          -0.0010898490675507562
         ],
         [
-          57.76071828691539,
+          27.397496400123647,
           0.0
         ],
         [
-          58.71005668913086,
+          27.409278514533003,
           0.0
         ],
         [
-          59.701612671241776,
+          27.43284274335172,
           0.0
         ],
         [
-          60.69316865335269,
+          27.456406972170438,
           0.0
         ],
         [
-          61.68472463546361,
+          27.479971200989155,
           0.0
         ],
         [
-          63.019700273431596,
+          27.597382226258187,
           0.0
         ],
         [
-          64.35467591139958,
+          27.71479325152722,
           0.0
         ],
         [
-          65.68965154936757,
+          27.83220427679625,
           0.0
         ],
         [
-          67.66870000169779,
+          27.949615302065283,
           0.0
         ],
         [
-          69.647748454028,
+          28.127223521019754,
           0.0
         ],
         [
-          71.62679690635822,
+          28.304831739974226,
           0.0
         ],
         [
-          73.60427163292789,
+          28.482439958928698,
           0.0
         ],
         [
-          75.58174635949756,
+          28.66004817788317,
           0.0
         ],
         [
-          77.55922108606723,
+          28.83765639683764,
           0.0
         ],
         [
-          83.74360774187622,
+          29.142165265211645,
           0.0
         ],
         [
-          89.92799439768521,
+          29.44667413358565,
           0.0
         ],
         [
-          91.47409106163745,
+          29.751183001959653,
           0.0
         ],
         [
-          93.0201877255897,
+          30.055691870333657,
           0.0
         ],
         [
-          94.56628438954193,
+          30.36020073870766,
           0.0
         ],
         [
-          95.55174469780209,
+          30.664709607081665,
           0.0
         ],
         [
-          96.53720500606225,
+          31.156066194366023,
           0.0
         ],
         [
-          97.52266531432241,
+          31.64742278165038,
           0.0
         ],
         [
-          98.50866761324593,
+          32.138779368934735,
           0.0
         ],
         [
-          104.229915181177,
+          32.63013595621909,
           0.0
         ],
         [
-          109.95116274910808,
+          33.12149254350345,
           0.0
         ],
         [
-          115.67241031703915,
+          33.61284913078781,
           0.0
         ],
         [
-          123.80427445904986,
+          34.104205718072166,
           0.0
         ],
         [
-          131.93613860106058,
+          34.59556230535652,
           0.0
         ],
         [
-          140.0680027430713,
+          35.20520071519727,
           0.0
         ],
         [
-          148.19986688508203,
+          35.81483912503802,
           0.0
         ],
         [
-          158.3904761904762,
+          36.42447753487877,
           0.0
         ],
         [
-          158.5093989588007,
+          37.03411594471952,
           0.0
         ],
         [
-          158.62832172712518,
+          37.61030939313683,
           0.0
         ],
         [
-          159.8904761904762,
+          38.186502841554145,
           0.0
         ],
         [
-          159.89288732694692,
+          38.76269628997146,
           0.0
         ],
         [
-          159.89529846341765,
+          39.33888973838877,
           0.0
         ],
         [
-          159.90012073635913,
+          40.470199282925094,
           0.0
         ],
         [
-          159.9049430093006,
+          41.601508827461416,
           0.0
         ],
         [
-          159.9097652822421,
+          42.73281837199774,
           0.0
         ],
         [
-          159.93243780659526,
+          43.86412791653406,
           0.0
         ],
         [
-          159.95511033094843,
+          45.065546566682556,
           0.0
         ],
         [
-          159.9777828553016,
+          46.26696521683105,
           0.0
         ],
         [
-          160.00045537965477,
+          47.46838386697955,
           0.0
         ],
         [
-          160.0346633693688,
+          48.0644116487991,
           0.0
         ],
         [
-          160.0688713590828,
+          48.66043943061865,
           0.0
         ],
         [
-          160.10307934879683,
+          49.2564672124382,
           0.0
         ],
         [
-          160.13728733851084,
+          49.85016027085198,
           0.0
         ],
         [
-          160.17149532822486,
+          50.44385332926576,
           0.0
         ],
         [
-          160.23106728260558,
+          51.037546387679534,
           0.0
         ],
         [
-          160.2906392369863,
+          52.22602215013901,
           0.0
         ],
         [
-          160.350211191367,
+          53.414497912598485,
           0.0
         ],
         [
-          160.40978314574772,
+          54.60297367505796,
           0.0
         ],
         [
-          160.46935510012844,
+          55.78628196962012,
           0.0
         ],
         [
-          160.52892705450915,
+          56.96959026418228,
           0.0
         ],
         [
-          160.6259323588013,
+          58.15289855874444,
           0.0
         ],
         [
-          160.72293766309343,
+          59.80914674127502,
           0.0
         ],
         [
-          160.81994296738557,
+          61.465394923805604,
           0.0
         ],
         [
-          160.9169482716777,
+          63.12164310633619,
           0.0
         ],
         [
-          161.01395357596985,
+          67.96806599954927,
           0.0
         ],
         [
-          161.110958880262,
+          69.17967172285253,
           0.0
         ],
         [
-          161.26736304673776,
+          71.60288316945908,
           0.0
         ],
         [
-          161.42376721321352,
+          74.02609461606562,
           0.0
         ],
         [
-          161.5801713796893,
+          76.44930606267216,
           0.0
         ],
         [
-          161.73657554616506,
+          82.05653011294073,
           0.0
         ],
         [
-          161.89297971264082,
+          87.6637541632093,
           0.0
         ],
         [
-          162.11653214894974,
+          93.27097821347787,
           0.0
         ],
         [
-          162.34008458525867,
+          102.7701466845776,
           0.0
         ],
         [
-          162.5636370215676,
+          112.26931515567732,
           0.0
         ],
         [
-          162.7871894578765,
+          121.76848362677704,
           0.0
         ],
         [
-          163.01074189418543,
+          131.26765209787678,
           0.0
         ],
         [
-          163.3020518484637,
+          142.3439771582361,
           0.0
         ],
         [
-          163.59336180274195,
+          153.42030221859542,
           0.0
         ],
         [
-          163.88467175702021,
+          158.24761904761905,
           0.0
         ],
         [
-          164.17598171129848,
+          158.36654057116988,
           0.0
         ],
         [
-          164.4850936705858,
+          158.4854620947207,
           0.0
         ],
         [
-          164.79420562987312,
+          159.74761904761905,
           0.0
         ],
         [
-          165.10331758916044,
+          159.74948515317416,
           0.0
         ],
         [
-          165.4129391221861,
+          159.75135125872927,
           0.0
         ],
         [
-          165.72256065521174,
+          159.75508346983946,
           0.0
         ],
         [
-          166.03218218823739,
+          159.75881568094965,
           0.0
         ],
         [
-          166.34184757413777,
+          159.76254789205984,
           0.0
         ],
         [
-          167.93141144685217,
+          159.78008817979105,
           0.0
         ],
         [
-          169.52097531956656,
+          159.79762846752226,
           0.0
         ],
         [
-          171.11053919228095,
+          159.81516875525347,
           0.0
         ],
         [
-          175.76088994831585,
+          159.83270904298467,
           0.0
         ],
         [
-          180.41124070435075,
+          159.85917311481012,
           0.0
         ],
         [
-          185.06159146038564,
+          159.88563718663556,
           0.0
         ],
         [
-          202.12571753179242,
+          159.912101258461,
           0.0
         ],
         [
-          219.1898436031992,
+          159.93856533028645,
           0.0
         ],
         [
-          236.25396967460597,
+          159.9650294021119,
           0.0
         ],
         [
-          261.9195710352043,
+          160.01112136384918,
           0.0
         ],
         [
-          287.5851723958026,
+          160.05721332558647,
           0.0
         ],
         [
-          298.2290954115797,
-          0.0
-        ]
-      ],
-      "title": "\u03911 (Rad/S\u00b2) x Time (S)",
-      "inputs": [
-        "Time (s)"
-      ],
-      "outputs": [
-        "\u03b11 (rad/s\u00b2)"
-      ],
-      "interpolation": "spline",
-      "extrapolation": "zero",
-      "signature": {
-        "module": "rocketpy.mathutils.function",
-        "name": "Function"
-      }
-    },
-    "alpha2": {
-      "source": [
-        [
-          0.0,
+          160.10330528732376,
           0.0
         ],
         [
-          0.0014095582940420635,
+          160.14939724906105,
           0.0
         ],
         [
-          0.002819116588084127,
+          160.19548921079834,
           0.0
         ],
         [
-          0.005638233176168254,
+          160.24158117253563,
           0.0
         ],
         [
-          0.008457349764252381,
+          160.3166327641328,
           0.0
         ],
         [
-          0.011276466352336508,
+          160.39168435572998,
           0.0
         ],
         [
-          0.03946763223317778,
+          160.46673594732715,
           0.0
         ],
         [
-          0.04085528032083424,
+          160.54178753892432,
           0.0
         ],
         [
-          0.042242928408490706,
+          160.6168391305215,
           0.0
         ],
         [
-          0.045018224583803626,
+          160.69189072211867,
           0.0
         ],
         [
-          0.047793520759116546,
+          160.81292628958846,
           0.0
         ],
         [
-          0.05056881693442947,
+          160.93396185705825,
           0.0
         ],
         [
-          0.051535065794346184,
+          161.05499742452804,
           0.0
         ],
         [
-          0.0525013146542629,
+          161.17603299199783,
           0.0
         ],
         [
-          0.05443381237409633,
+          161.29706855946762,
           0.0
         ],
         [
-          0.056366310093929756,
+          161.46985652170034,
           0.0
         ],
         [
-          0.05829880781376318,
+          161.64264448393305,
           0.0
         ],
         [
-          0.06066778422868188,
+          161.81543244616577,
           0.0
         ],
         [
-          0.06303676064360057,
+          161.9882204083985,
           0.0
         ],
         [
-          0.06540573705851926,
+          162.1610083706312,
           0.0
         ],
         [
-          0.08909550120770625,
+          162.38610275126362,
           0.0
         ],
         [
-          0.09280001741842829,
+          162.61119713189603,
           0.0
         ],
         [
-          0.09574786203389758,
+          162.83629151252845,
           0.0
         ],
         [
-          0.09869570664936687,
+          163.06138589316086,
           0.0
         ],
         [
-          0.10099207719472714,
+          163.3001953672972,
           0.0
         ],
         [
-          0.1032884477400874,
+          163.53900484143352,
           0.0
         ],
         [
-          0.10558481828544766,
+          163.77781431556986,
           0.0
         ],
         [
-          0.11017755937616817,
+          164.01699558831393,
           0.0
         ],
         [
-          0.11477030046688869,
+          164.256176861058,
           0.0
         ],
         [
-          0.1193630415576092,
+          164.49535813380209,
           0.0
         ],
         [
-          0.13127045763130013,
+          164.73455176863084,
           0.0
         ],
         [
-          0.14317787370499105,
+          165.96552936083825,
           0.0
         ],
         [
-          0.14995992644651876,
+          167.19650695304566,
           0.0
         ],
         [
-          0.1542011028620784,
+          168.42748454525307,
           0.0
         ],
         [
-          0.15844227927763802,
+          172.0340398974043,
           0.0
         ],
         [
-          0.16268345569319764,
+          175.64059524955556,
           0.0
         ],
         [
-          0.1711658085243169,
+          179.2471506017068,
           0.0
         ],
         [
-          0.17964816135543615,
+          196.48491242496618,
           0.0
         ],
         [
-          0.1881305141865554,
+          213.72267424822556,
           0.0
         ],
         [
-          0.19446574773727407,
+          230.96043607148493,
           0.0
         ],
         [
-          0.20080098128799273,
+          256.216460721343,
           0.0
         ],
         [
-          0.2056611859339936,
+          281.4724853712011,
           0.0
         ],
         [
-          0.21052139057999447,
+          298.21839993404154,
           0.0
-        ],
+        ]
+      ],
+      "title": "\u03912 (Rad/S\u00b2) x Time (S)",
+      "inputs": [
+        "Time (s)"
+      ],
+      "outputs": [
+        "\u03b12 (rad/s\u00b2)"
+      ],
+      "interpolation": "spline",
+      "extrapolation": "zero",
+      "signature": {
+        "module": "rocketpy.mathutils.function",
+        "name": "Function",
+        "hash": 8532846656360
+      }
+    },
+    "alpha3": {
+      "source": [
         [
-          0.21538159522599534,
+          0.0,
           0.0
         ],
         [
-          0.22510200451799706,
+          0.00140955829402094,
           0.0
         ],
         [
-          0.23482241380999877,
+          0.00281911658804188,
           0.0
         ],
         [
-          0.24454282310200048,
+          0.00563823317608376,
           0.0
         ],
         [
-          0.2542632323940022,
+          0.00845734976412564,
           0.0
         ],
         [
-          0.35146732531401936,
+          0.01127646635216752,
           0.0
         ],
         [
-          0.3632465986442917,
+          0.039467632232586314,
           0.0
         ],
         [
-          0.3693545968582991,
+          0.04085528032029989,
           0.0
         ],
         [
-          0.37546259507230645,
+          0.04224292840801347,
           0.0
         ],
         [
-          0.3876785915003212,
+          0.04501822458344063,
           0.0
         ],
         [
-          0.39989458792833593,
+          0.047793520758867794,
           0.0
         ],
         [
-          0.4121105843563507,
+          0.050568816934294956,
           0.0
         ],
         [
-          0.4714932108541475,
+          0.051535065794208836,
           0.0
         ],
         [
-          0.5078257800637102,
+          0.052501314654122715,
           0.0
         ],
         [
-          0.5343429255049618,
+          0.05443381237395048,
           0.0
         ],
         [
-          0.5608600709462134,
+          0.056366310093778245,
           0.0
         ],
         [
-          0.587377216387465,
+          0.05829880781360601,
           0.0
         ],
         [
-          0.6404115072699682,
+          0.06066778422864502,
           0.0
         ],
         [
-          0.6934457981524714,
+          0.06303676064368403,
           0.0
         ],
         [
-          0.7464800890349746,
+          0.06540573705872305,
           0.0
         ],
         [
-          0.7995143799174779,
+          0.08909550120911316,
           0.0
         ],
         [
-          0.8131556786423583,
+          0.09280001741983737,
           0.0
         ],
         [
-          0.8267969773672387,
+          0.09574786203637055,
           0.0
         ],
         [
-          0.8404382760921191,
+          0.09869570665290373,
           0.0
         ],
         [
-          0.8773817713324279,
+          0.10099207719695144,
           0.0
         ],
         [
-          0.9143252665727367,
+          0.10328844774099916,
           0.0
         ],
         [
-          0.9512687618130455,
+          0.10558481828504687,
           0.0
         ],
         [
-          0.9671044469204755,
+          0.1101775593731423,
           0.0
         ],
         [
-          0.9987682629763311,
+          0.11477030046123773,
           0.0
         ],
         [
-          1.0182059593067265,
+          0.11936304154933317,
           0.0
         ],
         [
-          1.037643655637122,
+          0.1312706469438581,
           0.0
         ],
         [
-          1.0570813519675175,
+          0.14317825233838302,
           0.0
         ],
         [
-          1.0878522163238507,
+          0.1499601229088181,
           0.0
         ],
         [
-          1.1186230806801838,
+          0.1542012180187087,
           0.0
         ],
         [
-          1.1439344065815038,
+          0.1584423131285993,
           0.0
         ],
         [
-          1.1692457324828238,
+          0.1626834082384899,
           0.0
         ],
         [
-          1.1945570583841438,
+          0.1711655984582711,
           0.0
         ],
         [
-          1.2316667865519533,
+          0.17964778867805228,
           0.0
         ],
         [
-          1.2687765147197627,
+          0.18812997889783348,
           0.0
         ],
         [
-          1.3058862428875722,
+          0.19446537171097383,
           0.0
         ],
         [
-          1.3429959710553816,
+          0.20080076452411422,
           0.0
         ],
         [
-          1.4022433435144068,
+          0.20566109450366143,
           0.0
         ],
         [
-          1.447124093183637,
+          0.21052142448320865,
           0.0
         ],
         [
-          1.4920048428528674,
+          0.21538175446275587,
           0.0
         ],
         [
-          1.5261259080406766,
+          0.22510241442185028,
           0.0
         ],
         [
-          1.5602469732284858,
+          0.23482307438094469,
           0.0
         ],
         [
-          1.594368038416295,
+          0.2445437343400391,
           0.0
         ],
         [
-          1.6284891036041043,
+          0.2542643942991335,
           0.0
         ],
         [
-          1.6626101687919135,
+          0.3514709938900776,
           0.0
         ],
         [
-          1.6967312339797227,
+          0.36324670161934375,
           0.0
         ],
         [
-          1.730852299167532,
-          0.0
+          0.3693547037882063,
+          6.828966756426463e-31
         ],
         [
-          1.770204581699234,
-          0.0
+          0.3754627059570688,
+          -5.337020583361311e-27
         ],
         [
-          1.809556864230936,
-          0.0
+          0.3876787102947939,
+          -9.210169343479073e-29
         ],
         [
-          1.8489091467626382,
-          0.0
+          0.39989471463251897,
+          -1.9178671226236588e-28
         ],
         [
-          1.8882614292943403,
-          0.0
+          0.41211071897024404,
+          -1.8011515534949447e-27
         ],
         [
-          1.9276137118260424,
-          0.0
+          0.47147904178591876,
+          -1.1175261600557317e-26
         ],
         [
-          1.9669659943577444,
-          0.0
+          0.5078212847273655,
+          -1.203286048207377e-26
         ],
         [
-          2.0063182768894463,
-          0.0
+          0.5343387025617514,
+          1.751793713056306e-22
         ],
         [
-          2.0456705594211484,
-          0.0
+          0.5608561203961373,
+          -1.3197883128775536e-26
         ],
         [
-          2.0850228419528505,
-          0.0
+          0.5873735382305232,
+          5.443093788545557e-24
         ],
         [
-          2.1243751244845526,
-          0.0
+          0.6404083738992948,
+          -4.638236114661232e-25
         ],
         [
-          2.1637274070162547,
-          0.0
+          0.6934432095680665,
+          2.76891269545405e-21
         ],
         [
-          2.2030796895479567,
-          0.0
+          0.7464780452368381,
+          -3.728989114714566e-23
         ],
         [
-          2.242431972079659,
-          0.0
+          0.7995128809056098,
+          1.7363796971699623e-22
         ],
         [
-          2.281784254611361,
-          0.0
+          0.813164227469089,
+          2.273961164553103e-20
         ],
         [
-          2.321136537143063,
-          0.0
+          0.8268155740325682,
+          2.462429298250999e-22
         ],
         [
-          2.360488819674765,
-          0.0
+          0.8404669205960474,
+          2.4887905773374417e-22
         ],
         [
-          2.399841102206467,
-          0.0
+          0.8775732859954444,
+          -5.406749053923812e-22
         ],
         [
-          2.4391933847381693,
-          0.0
+          0.9146796513948413,
+          -5.62529034295064e-22
         ],
         [
-          2.4785456672698714,
-          0.0
+          0.9517860167942382,
+          4.448582999353284e-20
         ],
         [
-          2.5178979498015734,
-          0.0
+          0.9674325642455079,
+          -9.737258788332839e-22
         ],
         [
-          2.5572502323332755,
-          0.0
+          0.9990075872778321,
+          -3.5720171919444286e-21
         ],
         [
-          2.5966025148649776,
-          0.0
+          1.0183793592598076,
+          -8.141042506279924e-21
         ],
         [
-          2.6359547973966797,
-          0.0
+          1.037751131241783,
+          6.446171147318294e-17
         ],
         [
-          2.675307079928382,
-          0.0
+          1.0571229032237586,
+          1.5280451745404948e-16
         ],
         [
-          2.714659362460084,
-          0.0
+          1.0878788324799102,
+          1.9738978913215982e-16
         ],
         [
-          2.7466638251883717,
-          0.0
+          1.118634761736062,
+          2.1338906028644015e-16
         ],
         [
-          2.7786682879166595,
-          0.0
+          1.1439443303803107,
+          3.017258859611256e-17
         ],
         [
-          2.8106727506449474,
-          0.0
+          1.1692538990245596,
+          -2.0582243507112354e-16
         ],
         [
-          2.842677213373235,
-          0.0
+          1.1945634676688084,
+          -4.41755932562647e-16
         ],
         [
-          2.874681676101523,
-          0.0
+          1.2316568052102488,
+          -7.654569306361517e-16
         ],
         [
-          2.9108918137851214,
-          0.0
+          1.2687501427516892,
+          -6.99207281317235e-16
         ],
         [
-          2.9402847513530936,
-          0.0
+          1.3058434802931296,
+          -3.303430169277203e-16
         ],
         [
-          2.9637983886571173,
-          0.0
+          1.34293681783457,
+          1.7559725582920065e-16
         ],
         [
-          2.987312025961141,
-          0.0
+          1.4021386812930872,
+          6.385599215298672e-16
         ],
         [
-          2.9914721939592726,
-          0.0
+          1.447031703480718,
+          -1.3057958334860116e-15
         ],
         [
-          2.995632361957404,
-          0.0
+          1.491924725668349,
+          -4.54377399891311e-15
         ],
         [
-          2.9997925299555357,
-          0.0
+          1.5260726318617992,
+          -5.725121127932705e-15
         ],
         [
-          3.0010806713261253,
-          0.0
+          1.5602205380552494,
+          -5.8852779126456356e-15
         ],
         [
-          3.002368812696715,
-          0.0
+          1.5943684442486996,
+          -5.638294279918212e-15
         ],
         [
-          3.0049450954378942,
-          0.0
+          1.6285163504421498,
+          -5.3218867999054684e-15
         ],
         [
-          3.0075213781790735,
-          0.0
+          1.6626642566356,
+          -5.039194476565861e-15
         ],
         [
-          3.031179520120233,
-          0.0
+          1.6968121628290502,
+          -4.793504293398322e-15
         ],
         [
-          3.0548376620613924,
-          0.0
+          1.7309600690225004,
+          -4.565537095966957e-15
         ],
         [
-          3.078495804002552,
-          0.0
+          1.770308643380365,
+          -4.310981899627973e-15
         ],
         [
-          3.1021539459437113,
-          0.0
+          1.8096572177382295,
+          -4.059314860981868e-15
         ],
         [
-          3.1205915242496687,
-          0.0
+          1.849005792096094,
+          -3.809859084182717e-15
         ],
         [
-          3.139029102555626,
-          0.0
+          1.8883543664539586,
+          -3.564033373088339e-15
         ],
         [
-          3.1574666808615834,
-          0.0
+          1.9277029408118231,
+          -3.3246845161781963e-15
         ],
         [
-          3.1943418374734978,
-          0.0
+          1.9670515151696877,
+          -3.0936591769645362e-15
         ],
         [
-          3.223214302746968,
-          0.0
+          2.006400089527552,
+          -2.8708007258554134e-15
         ],
         [
-          3.252086768020438,
-          0.0
+          2.0457486638854165,
+          -2.657044608541542e-15
         ],
         [
-          3.2809592332939084,
-          0.0
+          2.085097238243281,
+          -2.4522524263650204e-15
         ],
         [
-          3.2861061530217075,
-          0.0
+          2.124445812601145,
+          -2.2570352808067654e-15
         ],
         [
-          3.2912530727495066,
-          0.0
+          2.1637943869590095,
+          -2.0717376607657185e-15
         ],
         [
-          3.2963999924773058,
-          0.0
+          2.203142961316874,
+          -1.8965123415478627e-15
         ],
         [
-          3.3042992470019175,
-          0.0
+          2.242491535674738,
+          -1.7316203162038858e-15
         ],
         [
-          3.312198501526529,
-          0.0
+          2.2818401100326025,
+          -1.58508408939639e-15
         ],
         [
-          3.320097756051141,
-          0.0
+          2.3211886843904668,
+          2.2018310610005652e-16
         ],
         [
-          3.329990894740742,
-          0.0
+          2.360537258748331,
+          4.492857621159572e-15
         ],
         [
-          3.339884033430343,
-          0.0
+          2.3998858331061954,
+          9.992742691537466e-15
         ],
         [
-          3.349777172119944,
-          0.0
+          2.4392344074640597,
+          1.2346803655882075e-14
         ],
         [
-          3.3683253555356067,
-          0.0
+          2.478582981821924,
+          1.2895020834895018e-14
         ],
         [
-          3.3868735389512694,
-          0.0
+          2.5179315561797884,
+          1.1424617727427692e-14
         ],
         [
-          3.4020443640890705,
-          0.0
+          2.5572801305376527,
+          7.485244729251702e-15
         ],
         [
-          3.4113407650123997,
-          0.0
+          2.596628704895517,
+          1.014238253764019e-15
         ],
         [
-          3.420637165935729,
-          0.0
+          2.6359772792533813,
+          -7.196631066718169e-15
         ],
         [
-          3.429933566859058,
-          0.0
+          2.6753258536112456,
+          -1.549905322651529e-14
         ],
         [
-          3.446308281894537,
-          0.0
+          2.71467442796911,
+          -2.171892014352821e-14
         ],
         [
-          3.4626829969300164,
-          0.0
+          2.746682540487563,
+          -2.301357010405716e-14
         ],
         [
-          3.4790577119654955,
-          0.0
+          2.778690653006016,
+          -2.1087926512337446e-14
         ],
         [
-          3.5098113349838638,
-          0.0
+          2.810698765524469,
+          -1.6530543962296768e-14
         ],
         [
-          3.534175816549051,
-          0.0
+          2.842706878042922,
+          -1.043925694342189e-14
         ],
         [
-          3.558540298114238,
-          0.0
+          2.874714990561375,
+          -4.137655416195483e-15
         ],
         [
-          3.582904779679425,
-          0.0
+          2.9109277644238576,
+          2.6233868455478738e-15
         ],
         [
-          3.615075076269808,
-          0.0
+          2.940339896156497,
+          6.524323483476452e-15
         ],
         [
-          3.6472453728601906,
-          0.0
+          2.9638563968017557,
+          7.316020872138574e-15
         ],
         [
-          3.6794156694505733,
-          0.0
+          2.9873728974470146,
+          6.798364165236496e-15
         ],
         [
-          3.711585966040956,
-          0.0
+          2.991532758872659,
+          6.696964104510746e-15
         ],
         [
-          3.7510748617223286,
-          0.0
+          2.995692620298303,
+          6.593777423486382e-15
         ],
         [
-          3.790563757403701,
-          0.0
+          2.999852481723947,
+          6.490445189345701e-15
         ],
         [
-          3.830052653085074,
-          0.0
+          3.0011406359017885,
+          6.4594353343580344e-15
         ],
         [
-          3.862940498739986,
-          0.0
+          3.00242879007963,
+          6.428549293989794e-15
         ],
         [
-          3.895828344394898,
-          0.0
+          3.0050050984353125,
+          6.367193958608229e-15
         ],
         [
-          3.901564462162616,
-          0.0
+          3.007581406790995,
+          6.306442518803721e-15
         ],
         [
-          3.9073005799303346,
-          0.0
+          3.0312400452524226,
+          5.702945467110347e-15
         ],
         [
-          3.913036697698053,
-          0.0
+          3.05489868371385,
+          5.192008234127916e-15
         ],
         [
-          3.924489906398398,
-          0.0
+          3.0785573221752776,
+          4.735948885289997e-15
         ],
         [
-          3.935943115098743,
-          0.0
+          3.102215960636705,
+          4.136565645415418e-15
         ],
         [
-          3.947396323799088,
-          0.0
+          3.120664542586555,
+          3.708541328424298e-15
         ],
         [
-          3.975516795322242,
-          0.0
+          3.139113124536405,
+          3.3340663202824607e-15
         ],
         [
-          4.003637266845396,
-          0.0
+          3.1575617064862547,
+          3.0188124415941212e-15
         ],
         [
-          4.03175773836855,
-          0.0
+          3.194458870385954,
+          2.5508201887056617e-15
         ],
         [
-          4.071718134752553,
-          0.0
+          3.2233916577517485,
+          2.459944015275778e-15
         ],
         [
-          4.111678531136556,
-          0.0
+          3.252324445117543,
+          2.443751186513852e-15
         ],
         [
-          4.151638927520558,
-          0.0
+          3.2812572324833376,
+          2.395852600397958e-15
         ],
         [
-          4.191599323904561,
-          0.0
+          3.2864042093564865,
+          2.356045674304475e-15
         ],
         [
-          4.247720558129715,
-          0.0
+          3.2915511862296354,
+          2.314831511871146e-15
         ],
         [
-          4.293788946145795,
-          0.0
+          3.2966981631027843,
+          2.2734192300884206e-15
         ],
         [
-          4.3319865166419085,
-          0.0
+          3.3044731976480057,
+          2.204663006887218e-15
         ],
         [
-          4.370184087138022,
-          0.0
+          3.312248232193227,
+          2.1352842404943226e-15
         ],
         [
-          4.408381657634136,
-          0.0
+          3.3200232667384486,
+          2.067080571536938e-15
         ],
         [
-          4.44657922813025,
-          0.0
+          3.3299608976332786,
+          1.9828914623326083e-15
         ],
         [
-          4.484776798626363,
-          0.0
+          3.3398985285281086,
+          1.901795183010477e-15
         ],
         [
-          4.527459427885128,
-          0.0
+          3.3498361594229387,
+          1.824027006954428e-15
         ],
         [
-          4.570142057143892,
-          0.0
+          3.3684063767347974,
+          1.6851457325830944e-15
         ],
         [
-          4.612824686402656,
-          0.0
+          3.386976594046656,
+          1.7266284160523198e-15
         ],
         [
-          4.655507315661421,
-          0.0
+          3.4020328166662903,
+          1.8326902781855148e-15
         ],
         [
-          4.698189944920185,
-          0.0
+          3.4113057466050263,
+          1.8095540364036676e-15
         ],
         [
-          4.752240597633832,
-          0.0
+          3.4205786765437622,
+          1.7546883072158898e-15
         ],
         [
-          4.806291250347479,
-          0.0
+          3.429851606482498,
+          1.6909644570662493e-15
         ],
         [
-          4.8603419030611255,
-          0.0
+          3.4462125806335115,
+          1.5824741062159471e-15
         ],
         [
-          4.914392555774772,
-          0.0
+          3.462573554784525,
+          1.4781446209839535e-15
         ],
         [
-          4.968443208488419,
-          0.0
+          3.4789345289355382,
+          1.3797850223993254e-15
         ],
         [
-          5.022493861202066,
-          0.0
+          3.5099101021393686,
+          1.2103849804701335e-15
         ],
         [
-          5.076544513915713,
-          0.0
+          3.5343946919875657,
+          1.0910698306709316e-15
         ],
         [
-          5.13059516662936,
-          0.0
+          3.558879281835763,
+          9.834798762867236e-16
         ],
         [
-          5.1846458193430065,
-          0.0
+          3.58336387168396,
+          8.866969406261969e-16
         ],
         [
-          5.238696472056653,
-          0.0
+          3.6154318916074843,
+          7.743704319516233e-16
         ],
         [
-          5.2927471247703,
-          0.0
+          3.6474999115310087,
+          6.766573763877982e-16
         ],
         [
-          5.342460668455986,
-          0.0
+          3.679567931454533,
+          5.91258904903505e-16
         ],
         [
-          5.392174212141671,
-          0.0
+          3.7116359513780575,
+          5.166643995215339e-16
         ],
         [
-          5.441887755827357,
-          0.0
+          3.750677226849746,
+          4.3853852136384524e-16
         ],
         [
-          5.491601299513042,
-          0.0
+          3.789718502321435,
+          3.721854648740521e-16
         ],
         [
-          5.554603109165186,
-          0.0
+          3.8287597777931235,
+          3.160370877474399e-16
         ],
         [
-          5.617604918817331,
-          0.0
+          3.867801053264812,
+          2.68447530024214e-16
         ],
         [
-          5.6677507107483684,
-          0.0
+          3.906842328736501,
+          2.2817690885805694e-16
         ],
         [
-          5.717896502679406,
-          0.0
+          3.9127975041938576,
+          2.2257022316260854e-16
         ],
         [
-          5.768042294610444,
-          0.0
+          3.9187526796512144,
+          2.1712674851027963e-16
         ],
         [
-          5.818188086541482,
-          0.0
+          3.9247078551085712,
+          2.1184316751055716e-16
         ],
         [
-          5.878315251829882,
-          0.0
+          3.9366182060232844,
+          1.9452299462415736e-16
         ],
         [
-          5.928299499698518,
-          0.0
+          3.9485285569379975,
+          1.738563221089455e-16
         ],
         [
-          5.978283747567154,
-          0.0
+          3.9604389078527107,
+          1.524948121204587e-16
         ],
         [
-          6.02826799543579,
-          0.0
+          3.9894733064604,
+          1.1697600890057137e-16
         ],
         [
-          6.078252243304426,
-          0.0
+          4.018507705068089,
+          9.623746974324803e-17
         ],
         [
-          6.14293081584079,
-          0.0
+          4.047542103675778,
+          8.400318692075721e-17
         ],
         [
-          6.196765840796611,
-          0.0
+          4.0765765022834675,
+          7.513525370546304e-17
         ],
         [
-          6.250600865752432,
-          0.0
+          4.119155795005119,
+          6.494940712620608e-17
         ],
         [
-          6.304435890708253,
-          0.0
+          4.16173508772677,
+          5.573513491260174e-17
         ],
         [
-          6.3582709156640735,
-          0.0
+          4.1691207712068685,
+          5.2760249115000836e-17
         ],
         [
-          6.433461438883678,
-          0.0
+          4.176506454686967,
+          4.845189177709357e-17
         ],
         [
-          6.493499513622796,
-          0.0
+          4.1838921381670655,
+          4.377707970883307e-17
         ],
         [
-          6.553537588361913,
-          0.0
+          4.1986635051272625,
+          7.086861156020401e-19
         ],
         [
-          6.613575663101031,
-          0.0
+          4.2134348720874595,
+          -4.129694889431729e-17
         ],
         [
-          6.6736137378401486,
-          0.0
+          4.2282062390476565,
+          -6.76917644948587e-17
         ],
         [
-          6.752474107792829,
-          0.0
+          4.264323210631898,
+          -1.0609722994401584e-16
         ],
         [
-          6.813959694855546,
-          0.0
+          4.300440182216139,
+          -1.1540587488177101e-16
         ],
         [
-          6.875445281918263,
-          0.0
+          4.33655715380038,
+          -1.3320078443550657e-16
         ],
         [
-          6.93693086898098,
-          0.0
+          4.372674125384622,
+          -1.62073303792888e-16
         ],
         [
-          6.998416456043697,
-          0.0
+          4.416044435312633,
+          -1.7235779779989756e-16
         ],
         [
-          7.079711027784927,
-          0.0
+          4.459414745240645,
+          -1.1873513097444773e-16
         ],
         [
-          7.1413765714336215,
-          0.0
+          4.502785055168657,
+          -5.3209325263875046e-18
         ],
         [
-          7.203042115082316,
-          0.0
+          4.546155365096668,
+          1.0583076673348974e-16
         ],
         [
-          7.264707658731011,
-          0.0
+          4.58952567502468,
+          1.5352641532399112e-16
         ],
         [
-          7.326373202379705,
-          0.0
+          4.632895984952691,
+          1.234546927341319e-16
         ],
         [
-          7.4088916340702395,
-          0.0
+          4.676266294880703,
+          4.5647963054520994e-17
         ],
         [
-          7.471438984396619,
-          0.0
+          4.719636604808715,
+          -3.7660718631623574e-17
         ],
         [
-          7.533986334722999,
-          0.0
+          4.768224902129621,
+          -1.0773137735658961e-16
         ],
         [
-          7.596533685049379,
-          0.0
+          4.816813199450527,
+          -1.2993006271029948e-16
         ],
         [
-          7.659081035375759,
-          0.0
+          4.865401496771433,
+          -1.0029662384922489e-16
         ],
         [
-          7.748666795076123,
-          0.0
+          4.913989794092339,
+          -3.0978043123196603e-17
         ],
         [
-          7.759103537845691,
-          0.0
+          4.962578091413246,
+          5.0877229237393846e-17
         ],
         [
-          7.769540280615259,
-          0.0
+          5.016300880486902,
+          9.046357465665684e-17
         ],
         [
-          7.779977023384827,
-          0.0
+          5.070023669560559,
+          8.103700941842032e-17
         ],
         [
-          7.800850508923962,
-          0.0
+          5.123746458634216,
+          5.737341268790028e-17
         ],
         [
-          7.821723994463097,
-          0.0
+          5.177469247707872,
+          4.1434171437753046e-17
         ],
         [
-          7.842597480002232,
-          0.0
+          5.219601255563254,
+          3.595016725933968e-17
         ],
         [
-          7.900172892552435,
-          0.0
+          5.261733263418636,
+          -7.239675201638727e-16
         ],
         [
-          7.957748305102638,
-          0.0
+          5.3038652712740175,
+          -8.640532290020294e-16
         ],
         [
-          8.01532371765284,
-          0.0
+          5.345997279129399,
+          -2.46094684656673e-15
         ],
         [
-          8.072899130203044,
-          0.0
+          5.388129286984781,
+          8.234205232446831e-16
         ],
         [
-          8.14886572486838,
-          0.0
+          5.438594166103664,
+          9.881523807131907e-15
         ],
         [
-          8.224832319533714,
-          0.0
+          5.489059045222548,
+          1.0859678399252662e-14
         ],
         [
-          8.30079891419905,
-          0.0
+          5.539523924341431,
+          -4.208707160314288e-15
         ],
         [
-          8.376765508864384,
-          0.0
+          5.589988803460314,
+          -2.3526982452766795e-14
         ],
         [
-          8.45273210352972,
-          0.0
+          5.6404536825791975,
+          -3.0589326423400404e-14
         ],
         [
-          8.5564809550127,
-          0.0
+          5.690918561698081,
+          -2.3025866481536954e-14
         ],
         [
-          8.632458997358304,
-          0.0
+          5.741383440816964,
+          -1.1578393164459948e-14
         ],
         [
-          8.708437039703908,
-          0.0
+          5.7918483199358475,
+          -5.711123448846167e-15
         ],
         [
-          8.784415082049511,
-          0.0
+          5.842313199054731,
+          -5.651457136300496e-15
         ],
         [
-          8.860393124395115,
-          0.0
+          5.900175444574162,
+          -8.706160908865124e-15
         ],
         [
-          8.936371166740718,
-          0.0
+          5.958037690093594,
+          -1.0134241004507144e-14
         ],
         [
-          9.012349209086322,
-          0.0
+          6.015899935613025,
+          -8.978256422620347e-15
         ],
         [
-          9.088327251431926,
-          0.0
+          6.073762181132457,
+          -6.9247706130506164e-15
         ],
         [
-          9.16430529377753,
-          0.0
+          6.1316244266518884,
+          -5.390355614068699e-15
         ],
         [
-          9.255988954542772,
-          0.0
+          6.18948667217132,
+          -4.591773740270219e-15
         ],
         [
-          9.329184490076974,
-          0.0
+          6.2473489176907515,
+          -4.1235726804086145e-15
         ],
         [
-          9.402380025611176,
-          0.0
+          6.305211163210183,
+          -3.638250227630858e-15
         ],
         [
-          9.475575561145378,
-          0.0
+          6.374869724777001,
+          -3.025085741717038e-15
         ],
         [
-          9.54877109667958,
-          0.0
+          6.44452828634382,
+          -2.4529857618177888e-15
         ],
         [
-          9.621966632213782,
-          0.0
+          6.514186847910638,
+          -2.0597828114777617e-15
         ],
         [
-          9.69992497595067,
-          0.0
+          6.583845409477457,
+          -1.871309652691925e-15
         ],
         [
-          9.77788331968756,
-          0.0
+          6.653503971044275,
+          -1.7883142384066225e-15
         ],
         [
-          9.855841663424448,
-          0.0
+          6.723162532611093,
+          -1.6885293598565117e-15
         ],
         [
-          9.933800007161336,
-          0.0
+          6.792821094177912,
+          -1.4709072993827408e-15
         ],
         [
-          10.011758350898225,
-          0.0
+          6.856149583247434,
+          -1.2621451978091399e-15
         ],
         [
-          10.089716694635113,
-          0.0
+          6.919478072316956,
+          -1.1026356185134805e-15
         ],
         [
-          10.167675038372002,
-          0.0
+          6.982806561386478,
+          4.653894853301403e-16
         ],
         [
-          10.260259956542143,
-          0.0
+          7.046135050456,
+          2.38064832970915e-15
         ],
         [
-          10.331983881553601,
-          0.0
+          7.109463539525522,
+          3.998545117288559e-15
         ],
         [
-          10.403707806565059,
-          0.0
+          7.172792028595044,
+          4.807251876788963e-15
         ],
         [
-          10.475431731576517,
-          0.0
+          7.236120517664566,
+          4.618314046691132e-15
         ],
         [
-          10.570210949134573,
-          0.0
+          7.299449006734088,
+          3.565987080433659e-15
         ],
         [
-          10.664990166692629,
-          0.0
+          7.36277749580361,
+          2.0166117378242715e-15
         ],
         [
-          10.759769384250685,
-          0.0
+          7.441907419493829,
+          -3.0666628306430207e-16
         ],
         [
-          10.854548601808741,
-          0.0
+          7.521037343184047,
+          -1.999211760472187e-15
         ],
         [
-          10.949327819366797,
-          0.0
+          7.600167266874266,
+          -2.376024344878056e-15
         ],
         [
-          11.044107036924853,
-          0.0
+          7.696303025687341,
+          -1.4582253740937409e-15
         ],
         [
-          11.138886254482909,
-          0.0
+          7.7924387845004155,
+          2.9885955258184044e-16
         ],
         [
-          11.223078569708694,
-          0.0
+          7.88857454331349,
+          1.2496865720557063e-15
         ],
         [
-          11.307270884934479,
-          0.0
+          7.984710302126565,
+          6.169831240463253e-16
         ],
         [
-          11.391463200160263,
-          0.0
+          8.08084606093964,
+          -1.1153726402024173e-15
         ],
         [
-          11.526298565803183,
-          0.0
+          8.176981819752715,
+          -2.7084703512567627e-15
         ],
         [
-          11.629928166907957,
-          0.0
+          8.27311757856579,
+          -3.1235861891177224e-15
         ],
         [
-          11.733557768012732,
-          0.0
+          8.374791072592975,
+          -2.8581454663391282e-15
         ],
         [
-          11.837187369117506,
-          0.0
+          8.47646456662016,
+          -2.3353931050088188e-15
         ],
         [
-          11.940816970222281,
-          0.0
+          8.578138060647346,
+          -1.838793569264017e-15
         ],
         [
-          12.064752353445058,
-          0.0
+          8.679811554674531,
+          -1.4339979358309289e-15
         ],
         [
-          12.188687736667836,
-          0.0
+          8.781485048701716,
+          -1.1178639496532699e-15
         ],
         [
-          12.312623119890613,
-          0.0
+          8.883158542728902,
+          -8.732899570502531e-16
         ],
         [
-          12.43655850311339,
-          0.0
+          9.00524652036951,
+          -6.557997293530404e-16
         ],
         [
-          12.560493886336168,
-          0.0
+          9.12733449801012,
+          -4.958540105596317e-16
         ],
         [
-          12.684429269558946,
-          0.0
+          9.249422475650729,
+          -3.754761811205458e-16
         ],
         [
-          12.808364652781723,
-          0.0
+          9.371510453291338,
+          -2.8457075275350797e-16
         ],
         [
-          12.831782867710663,
-          0.0
+          9.493598430931947,
+          -2.1624591226937381e-16
         ],
         [
-          12.855201082639603,
-          0.0
+          9.615686408572556,
+          -1.6499003968373838e-16
         ],
         [
-          12.878619297568543,
-          0.0
+          9.638495054883064,
+          -1.5691339785844582e-16
         ],
         [
-          12.925455727426423,
-          0.0
+          9.661303701193573,
+          -1.4924997709318974e-16
         ],
         [
-          12.972292157284302,
-          0.0
+          9.684112347504081,
+          -1.4197755464220027e-16
         ],
         [
-          13.019128587142182,
-          0.0
+          9.729729640125099,
+          -1.325089404826946e-16
         ],
         [
-          13.153906925069139,
-          0.0
+          9.775346932746116,
+          -9.296407154482286e-17
         ],
         [
-          13.288685262996095,
-          0.0
+          9.820964225367133,
+          -6.52525384963402e-17
         ],
         [
-          13.423463600923052,
-          0.0
+          9.921906879777866,
+          -3.4919898862007866e-17
         ],
         [
-          13.558241938850008,
-          0.0
+          10.004312108890508,
+          -2.5400434265525088e-17
         ],
         [
-          13.693020276776965,
-          0.0
+          10.08671733800315,
+          -2.0132880194311262e-17
         ],
         [
-          13.827798614703921,
-          0.0
+          10.16912256711579,
+          -1.651536351413257e-17
         ],
         [
-          13.962576952630878,
-          0.0
+          10.318508402311611,
+          -1.3350005824302111e-17
         ],
         [
-          14.097355290557834,
-          0.0
+          10.416310959001898,
+          -1.1333771756957319e-17
         ],
         [
-          14.23213362848479,
-          0.0
+          10.514113515692184,
+          -9.362270756664969e-18
         ],
         [
-          14.366911966411747,
-          0.0
+          10.61191607238247,
+          -7.662645820006537e-18
         ],
         [
-          14.54025856584105,
-          0.0
+          10.709718629072757,
+          -6.289587616762138e-18
         ],
         [
-          14.682392980564643,
-          0.0
+          10.84073505366698,
+          -4.799188158214048e-18
         ],
         [
-          14.824527395288236,
-          0.0
+          10.935791309767657,
+          -4.031451930013319e-18
         ],
         [
-          14.966661810011828,
-          0.0
+          11.030847565868333,
+          -3.409478018799575e-18
         ],
         [
-          15.108796224735421,
-          0.0
+          11.12590382196901,
+          -2.8089949977574575e-18
         ],
         [
-          15.286616031474669,
-          0.0
+          11.220960078069686,
+          -2.3499627577137168e-18
         ],
         [
-          15.464435838213916,
-          0.0
+          11.34293278943959,
+          -1.9682416421937634e-18
         ],
         [
-          15.642255644953163,
-          0.0
+          11.4367198655186,
+          -1.5775489940443215e-18
         ],
         [
-          15.82007545169241,
-          0.0
+          11.530506941597611,
+          -1.3299161505337692e-18
         ],
         [
-          15.997895258431658,
-          0.0
+          11.624294017676622,
+          -1.122901896305516e-18
         ],
         [
-          16.175715065170905,
-          0.0
+          11.718081093755632,
+          -9.49601852973864e-19
         ],
         [
-          16.353534871910153,
-          0.0
+          11.830682395509069,
+          -7.782156388666207e-19
         ],
         [
-          16.5313546786494,
-          0.0
+          11.943283697262505,
+          -6.392330566244111e-19
         ],
         [
-          16.709174485388647,
-          0.0
+          12.055884999015941,
+          -5.262287810065677e-19
         ],
         [
-          16.886994292127895,
-          0.0
+          12.168486300769377,
+          -4.341287233616528e-19
         ],
         [
-          17.0827216691956,
-          0.0
+          12.29994439393496,
+          -3.478061115287838e-19
         ],
         [
-          17.245756216665097,
-          0.0
+          12.404633593778348,
+          -3.861726958492049e-19
         ],
         [
-          17.408790764134594,
-          0.0
+          12.509322793621736,
+          -2.4566052730406655e-19
         ],
         [
-          17.57182531160409,
-          0.0
+          12.614011993465125,
+          -2.0699569573897983e-19
         ],
         [
-          17.734859859073588,
-          0.0
+          12.718701193308513,
+          -1.7472518382509745e-19
         ],
         [
-          17.87633414755382,
-          0.0
+          12.865684810686352,
+          -3.406668082143278e-20
         ],
         [
-          17.989632326456782,
-          0.0
+          12.973565119592086,
+          -1.0230442723769082e-19
         ],
         [
-          18.102930505359744,
-          0.0
+          13.08144542849782,
+          -8.469884993371128e-20
         ],
         [
-          18.216228684262706,
-          0.0
+          13.189325737403555,
+          -7.17781857731756e-20
         ],
         [
-          18.392123725075212,
-          0.0
+          13.29720604630929,
+          -6.823653774779965e-20
         ],
         [
-          18.568018765887718,
-          0.0
+          13.455915925693203,
+          -8.937089142237088e-19
         ],
         [
-          18.743913806700224,
-          0.0
+          13.572668910835402,
+          -4.060656821202756e-17
         ],
         [
-          18.91980884751273,
-          0.0
+          13.6894218959776,
+          -9.624990040630758e-17
         ],
         [
-          19.13456671816614,
-          0.0
+          13.8061748811198,
+          -1.4464848495257848e-16
         ],
         [
-          19.349324588819552,
-          0.0
+          13.922927866261999,
+          -1.6895099264597145e-16
         ],
         [
-          19.564082459472964,
-          0.0
+          14.085961813353116,
+          -1.432145970925346e-16
         ],
         [
-          19.778840330126375,
-          0.0
+          14.204687031875425,
+          -7.533417073793235e-17
         ],
         [
-          19.993598200779786,
-          0.0
+          14.323412250397734,
+          -6.4375665315238406e-18
         ],
         [
-          20.208356071433197,
-          0.0
+          14.442137468920043,
+          4.640664115692382e-17
         ],
         [
-          20.42311394208661,
-          0.0
+          14.560862687442352,
+          7.763265991484809e-17
         ],
         [
-          20.63787181274002,
-          0.0
+          14.727812813776477,
+          6.979526439564986e-17
         ],
         [
-          20.89524769419444,
-          0.0
+          14.852763845864722,
+          2.276077377747999e-17
         ],
         [
-          21.152623575648857,
-          0.0
+          14.977714877952966,
+          -3.0895015773341575e-17
         ],
         [
-          21.409999457103275,
-          0.0
+          15.10266591004121,
+          -7.544186983795119e-17
         ],
         [
-          21.667375338557694,
-          0.0
+          15.227616942129455,
+          -1.0246479947023002e-16
         ],
         [
-          21.924751220012112,
-          0.0
+          15.39474055277627,
+          -9.989154518163826e-17
         ],
         [
-          22.18212710146653,
-          0.0
+          15.526750000917001,
+          -6.347876423478371e-17
         ],
         [
-          22.469164792221026,
-          0.0
+          15.658759449057733,
+          -1.7362860762446606e-17
         ],
         [
-          22.75620248297552,
-          0.0
+          15.790768897198465,
+          2.780459653040881e-17
         ],
         [
-          23.043240173730016,
-          0.0
+          15.922778345339196,
+          6.121182945509205e-17
         ],
         [
-          23.33027786448451,
-          0.0
+          16.079671368014623,
+          7.066191640854912e-17
         ],
         [
-          23.617315555239006,
-          0.0
+          16.23656439069005,
+          6.30443130769688e-17
         ],
         [
-          23.9043532459935,
-          0.0
+          16.393457413365475,
+          5.2095066170656684e-17
         ],
         [
-          24.191390936747997,
-          0.0
+          16.5503504360409,
+          4.204260109015406e-17
         ],
         [
-          24.419341542299552,
-          0.0
+          16.72307251287968,
+          3.491118104516661e-17
         ],
         [
-          24.647292147851108,
-          0.0
+          16.895794589718456,
+          2.990916435373888e-17
         ],
         [
-          24.875242753402663,
-          0.0
+          17.068516666557233,
+          2.6141915963765988e-17
         ],
         [
-          25.10319335895422,
-          0.0
+          17.24123874339601,
+          2.1996518155387965e-17
         ],
         [
-          25.331143964505774,
-          0.0
+          17.413960820234788,
+          1.828132149674732e-17
         ],
         [
-          25.51872139829633,
-          0.0
+          17.60482627556807,
+          1.6280741985376547e-17
         ],
         [
-          25.706298832086883,
-          0.0
+          17.79569173090135,
+          -1.7258623211383254e-16
         ],
         [
-          25.884966627110675,
-          0.0
+          17.98655718623463,
+          -4.3279284482778196e-16
         ],
         [
-          25.88571428571429,
-          0.0
+          18.17742264156791,
+          -5.481879348029379e-16
         ],
         [
-          25.891724887187262,
-          0.0
+          18.368288096901193,
+          -4.742591788928589e-16
         ],
         [
-          25.897735488660235,
-          0.0
+          18.559153552234473,
+          -2.8823097038344613e-16
         ],
         [
-          25.909756691606184,
-          0.0
+          18.750019007567754,
+          -8.477549135289023e-17
         ],
         [
-          25.921777894552132,
-          0.0
+          18.940884462901035,
+          5.088948002017777e-17
         ],
         [
-          25.93379909749808,
-          0.0
+          19.160009857916293,
+          8.261544547929132e-17
         ],
         [
-          26.05401112695755,
-          0.0
+          19.37913525293155,
+          4.405466753832308e-18
         ],
         [
-          26.17422315641702,
-          0.0
+          19.59826064794681,
+          -1.15313931451491e-16
         ],
         [
-          26.29443518587649,
-          0.0
+          19.817386042962067,
+          -2.1762263353223314e-16
         ],
         [
-          26.41464721533596,
-          0.0
+          20.036511437977325,
+          -2.6381484095812004e-16
         ],
         [
-          26.590536971802308,
-          0.0
+          20.343119545325326,
+          -2.413791230067888e-16
         ],
         [
-          26.766426728268655,
-          0.0
+          20.649727652673327,
+          -2.736275373611088e-16
         ],
         [
-          26.942316484735002,
-          0.0
+          20.95633576002133,
+          2.0806027808708695e-16
         ],
         [
-          27.11820624120135,
-          0.0
+          21.26294386736933,
+          1.2488302388831656e-15
         ],
         [
-          27.294095997667696,
-          0.0
+          21.56955197471733,
+          2.7411122068971553e-15
         ],
         [
-          27.38571428571429,
-          0.0
+          21.876160082065333,
+          3.9482344543507105e-15
         ],
         [
-          27.403707346930535,
-          0.0
+          22.182768189413334,
+          4.098600955691632e-15
         ],
         [
-          27.42170040814678,
-          0.0
+          22.489376296761336,
+          3.1921751374463857e-15
         ],
         [
-          27.457686530579274,
-          0.0
+          22.837549744359293,
+          1.7511639314076658e-15
         ],
         [
-          27.493672653011767,
-          0.0
+          23.18572319195725,
+          1.1602717172993005e-15
         ],
         [
-          27.52965877544426,
-          0.0
+          23.53389663955521,
+          2.2688896844564734e-15
         ],
         [
-          27.722358182653522,
-          0.0
+          23.882070087153167,
+          4.024952685946879e-15
         ],
         [
-          27.915057589862784,
-          0.0
+          24.230243534751125,
+          4.449434075748573e-15
         ],
         [
-          28.107756997072045,
-          0.0
+          24.578416982349083,
+          2.734267735921161e-15
         ],
         [
-          28.300456404281306,
-          0.0
+          24.92659042994704,
+          2.877538403013006e-16
         ],
         [
-          28.59167900359794,
-          0.0
+          25.274763877545,
+          -6.461408772325009e-16
         ],
         [
-          28.882901602914572,
-          0.0
+          25.544320922023445,
+          1.1667124255976447e-15
         ],
         [
-          29.174124202231205,
-          0.0
+          25.81387796650189,
+          5.984599804071818e-15
         ],
         [
-          29.465346801547838,
-          0.0
+          25.885098654500275,
+          7.191232585361466e-15
         ],
         [
-          29.75656940086447,
-          0.0
+          25.88571428571429,
+          7.201550472372026e-15
         ],
         [
-          30.25579246872472,
-          0.0
+          25.891725275535915,
+          7.0964897808159065e-15
         ],
         [
-          30.75501553658497,
-          0.0
+          25.89773626535754,
+          7.184132914534917e-15
         ],
         [
-          31.25423860444522,
-          0.0
+          25.90975824500079,
+          7.0706039354554775e-15
         ],
         [
-          31.75346167230547,
-          0.0
+          25.921780224644042,
+          7.150205512269038e-15
         ],
         [
-          32.25268474016572,
-          0.0
+          25.933802204287293,
+          7.133590830060543e-15
         ],
         [
-          32.75190780802597,
-          0.0
+          26.05402200071982,
+          6.988994106425125e-15
         ],
         [
-          33.48826295234864,
-          0.0
+          26.174241797152344,
+          6.7673377570496875e-15
         ],
         [
-          34.224618096671314,
-          0.0
+          26.29446159358487,
+          6.760982428863019e-15
         ],
         [
-          34.96097324099399,
-          0.0
+          26.414681390017396,
+          6.677323679874433e-15
         ],
         [
-          35.69732838531666,
-          0.0
+          26.59056092778596,
+          6.5868506798342296e-15
         ],
         [
-          36.43368352963933,
-          0.0
+          26.76644046555452,
+          6.5233399688945156e-15
         ],
         [
-          37.18331742700439,
-          0.0
+          26.942320003323083,
+          6.484170562151509e-15
         ],
         [
-          37.93295132436945,
-          0.0
+          27.118199541091645,
+          6.654066902993617e-15
         ],
         [
-          38.682585221734506,
-          0.0
+          27.294079078860207,
+          6.6414401461982474e-15
         ],
         [
-          39.432219119099564,
-          0.0
+          27.38571428571429,
+          6.251470743401975e-15
         ],
         [
-          40.18185301646462,
+          27.397496400123647,
           0.0
         ],
         [
-          41.55565606299418,
+          27.409278514533003,
           0.0
         ],
         [
-          42.92945910952374,
+          27.43284274335172,
           0.0
         ],
         [
-          44.3032621560533,
+          27.456406972170438,
           0.0
         ],
         [
-          45.67706520258286,
+          27.479971200989155,
           0.0
         ],
         [
-          47.05086824911242,
+          27.597382226258187,
           0.0
         ],
         [
-          48.62323521534373,
+          27.71479325152722,
           0.0
         ],
         [
-          50.19560218157505,
+          27.83220427679625,
           0.0
         ],
         [
-          51.76796914780636,
+          27.949615302065283,
           0.0
         ],
         [
-          53.340336114037676,
+          28.127223521019754,
           0.0
         ],
         [
-          54.91270308026899,
+          28.304831739974226,
           0.0
         ],
         [
-          55.86204148248446,
+          28.482439958928698,
           0.0
         ],
         [
-          56.811379884699925,
+          28.66004817788317,
           0.0
         ],
         [
-          57.76071828691539,
+          28.83765639683764,
           0.0
         ],
         [
-          58.71005668913086,
+          29.142165265211645,
           0.0
         ],
         [
-          59.701612671241776,
+          29.44667413358565,
           0.0
         ],
         [
-          60.69316865335269,
+          29.751183001959653,
           0.0
         ],
         [
-          61.68472463546361,
+          30.055691870333657,
           0.0
         ],
         [
-          63.019700273431596,
+          30.36020073870766,
           0.0
         ],
         [
-          64.35467591139958,
+          30.664709607081665,
           0.0
         ],
         [
-          65.68965154936757,
+          31.156066194366023,
           0.0
         ],
         [
-          67.66870000169779,
+          31.64742278165038,
           0.0
         ],
         [
-          69.647748454028,
+          32.138779368934735,
           0.0
         ],
         [
-          71.62679690635822,
+          32.63013595621909,
           0.0
         ],
         [
-          73.60427163292789,
+          33.12149254350345,
           0.0
         ],
         [
-          75.58174635949756,
+          33.61284913078781,
           0.0
         ],
         [
-          77.55922108606723,
+          34.104205718072166,
           0.0
         ],
         [
-          83.74360774187622,
+          34.59556230535652,
           0.0
         ],
         [
-          89.92799439768521,
+          35.20520071519727,
           0.0
         ],
         [
-          91.47409106163745,
+          35.81483912503802,
           0.0
         ],
         [
-          93.0201877255897,
+          36.42447753487877,
           0.0
         ],
         [
-          94.56628438954193,
+          37.03411594471952,
           0.0
         ],
         [
-          95.55174469780209,
+          37.61030939313683,
           0.0
         ],
         [
-          96.53720500606225,
+          38.186502841554145,
           0.0
         ],
         [
-          97.52266531432241,
+          38.76269628997146,
           0.0
         ],
         [
-          98.50866761324593,
+          39.33888973838877,
           0.0
         ],
         [
-          104.229915181177,
+          40.470199282925094,
           0.0
         ],
         [
-          109.95116274910808,
+          41.601508827461416,
           0.0
         ],
         [
-          115.67241031703915,
+          42.73281837199774,
           0.0
         ],
         [
-          123.80427445904986,
+          43.86412791653406,
           0.0
         ],
         [
-          131.93613860106058,
+          45.065546566682556,
           0.0
         ],
         [
-          140.0680027430713,
+          46.26696521683105,
           0.0
         ],
         [
-          148.19986688508203,
+          47.46838386697955,
           0.0
         ],
         [
-          158.3904761904762,
+          48.0644116487991,
           0.0
         ],
         [
-          158.5093989588007,
+          48.66043943061865,
           0.0
         ],
         [
-          158.62832172712518,
+          49.2564672124382,
           0.0
         ],
         [
-          159.8904761904762,
+          49.85016027085198,
           0.0
         ],
         [
-          159.89288732694692,
+          50.44385332926576,
           0.0
         ],
         [
-          159.89529846341765,
+          51.037546387679534,
           0.0
         ],
         [
-          159.90012073635913,
+          52.22602215013901,
           0.0
         ],
         [
-          159.9049430093006,
+          53.414497912598485,
           0.0
         ],
         [
-          159.9097652822421,
+          54.60297367505796,
           0.0
         ],
         [
-          159.93243780659526,
+          55.78628196962012,
           0.0
         ],
         [
-          159.95511033094843,
+          56.96959026418228,
           0.0
         ],
         [
-          159.9777828553016,
+          58.15289855874444,
           0.0
         ],
         [
-          160.00045537965477,
+          59.80914674127502,
           0.0
         ],
         [
-          160.0346633693688,
+          61.465394923805604,
           0.0
         ],
         [
-          160.0688713590828,
+          63.12164310633619,
           0.0
         ],
         [
-          160.10307934879683,
+          67.96806599954927,
           0.0
         ],
         [
-          160.13728733851084,
+          69.17967172285253,
           0.0
         ],
         [
-          160.17149532822486,
+          71.60288316945908,
           0.0
         ],
         [
-          160.23106728260558,
+          74.02609461606562,
           0.0
         ],
         [
-          160.2906392369863,
+          76.44930606267216,
           0.0
         ],
         [
-          160.350211191367,
+          82.05653011294073,
           0.0
         ],
         [
-          160.40978314574772,
+          87.6637541632093,
           0.0
         ],
         [
-          160.46935510012844,
+          93.27097821347787,
           0.0
         ],
         [
-          160.52892705450915,
+          102.7701466845776,
           0.0
         ],
         [
-          160.6259323588013,
+          112.26931515567732,
           0.0
         ],
         [
-          160.72293766309343,
+          121.76848362677704,
           0.0
         ],
         [
-          160.81994296738557,
+          131.26765209787678,
           0.0
         ],
         [
-          160.9169482716777,
+          142.3439771582361,
           0.0
         ],
         [
-          161.01395357596985,
+          153.42030221859542,
           0.0
         ],
         [
-          161.110958880262,
+          158.24761904761905,
           0.0
         ],
         [
-          161.26736304673776,
+          158.36654057116988,
           0.0
         ],
         [
-          161.42376721321352,
+          158.4854620947207,
           0.0
         ],
         [
-          161.5801713796893,
+          159.74761904761905,
           0.0
         ],
         [
-          161.73657554616506,
+          159.74948515317416,
           0.0
         ],
         [
-          161.89297971264082,
+          159.75135125872927,
           0.0
         ],
         [
-          162.11653214894974,
+          159.75508346983946,
           0.0
         ],
         [
-          162.34008458525867,
+          159.75881568094965,
           0.0
         ],
         [
-          162.5636370215676,
+          159.76254789205984,
           0.0
         ],
         [
-          162.7871894578765,
+          159.78008817979105,
           0.0
         ],
         [
-          163.01074189418543,
+          159.79762846752226,
           0.0
         ],
         [
-          163.3020518484637,
+          159.81516875525347,
           0.0
         ],
         [
-          163.59336180274195,
+          159.83270904298467,
           0.0
         ],
         [
-          163.88467175702021,
+          159.85917311481012,
           0.0
         ],
         [
-          164.17598171129848,
+          159.88563718663556,
           0.0
         ],
         [
-          164.4850936705858,
+          159.912101258461,
           0.0
         ],
         [
-          164.79420562987312,
+          159.93856533028645,
           0.0
         ],
         [
-          165.10331758916044,
+          159.9650294021119,
           0.0
         ],
         [
-          165.4129391221861,
+          160.01112136384918,
           0.0
         ],
         [
-          165.72256065521174,
+          160.05721332558647,
           0.0
         ],
         [
-          166.03218218823739,
+          160.10330528732376,
           0.0
         ],
         [
-          166.34184757413777,
+          160.14939724906105,
           0.0
         ],
         [
-          167.93141144685217,
+          160.19548921079834,
           0.0
         ],
         [
-          169.52097531956656,
+          160.24158117253563,
           0.0
         ],
         [
-          171.11053919228095,
+          160.3166327641328,
           0.0
         ],
         [
-          175.76088994831585,
+          160.39168435572998,
           0.0
         ],
         [
-          180.41124070435075,
+          160.46673594732715,
           0.0
         ],
         [
-          185.06159146038564,
+          160.54178753892432,
           0.0
         ],
         [
-          202.12571753179242,
+          160.6168391305215,
           0.0
         ],
         [
-          219.1898436031992,
+          160.69189072211867,
           0.0
         ],
         [
-          236.25396967460597,
+          160.81292628958846,
           0.0
         ],
         [
-          261.9195710352043,
+          160.93396185705825,
           0.0
         ],
         [
-          287.5851723958026,
+          161.05499742452804,
           0.0
         ],
         [
-          298.2290954115797,
+          161.17603299199783,
           0.0
-        ]
-      ],
-      "title": "\u03912 (Rad/S\u00b2) x Time (S)",
-      "inputs": [
-        "Time (s)"
-      ],
-      "outputs": [
-        "\u03b12 (rad/s\u00b2)"
-      ],
-      "interpolation": "spline",
-      "extrapolation": "zero",
-      "signature": {
-        "module": "rocketpy.mathutils.function",
-        "name": "Function"
-      }
-    },
-    "alpha3": {
-      "source": [
+        ],
         [
-          0.0,
+          161.29706855946762,
           0.0
         ],
         [
-          0.0014095582940420635,
+          161.46985652170034,
           0.0
         ],
         [
-          0.002819116588084127,
+          161.64264448393305,
           0.0
         ],
         [
-          0.005638233176168254,
+          161.81543244616577,
           0.0
         ],
         [
-          0.008457349764252381,
+          161.9882204083985,
           0.0
         ],
         [
-          0.011276466352336508,
+          162.1610083706312,
           0.0
         ],
         [
-          0.03946763223317778,
+          162.38610275126362,
           0.0
         ],
         [
-          0.04085528032083424,
+          162.61119713189603,
           0.0
         ],
         [
-          0.042242928408490706,
+          162.83629151252845,
           0.0
         ],
         [
-          0.045018224583803626,
+          163.06138589316086,
           0.0
         ],
         [
-          0.047793520759116546,
+          163.3001953672972,
           0.0
         ],
         [
-          0.05056881693442947,
+          163.53900484143352,
           0.0
         ],
         [
-          0.051535065794346184,
+          163.77781431556986,
           0.0
         ],
         [
-          0.0525013146542629,
+          164.01699558831393,
           0.0
         ],
         [
-          0.05443381237409633,
+          164.256176861058,
           0.0
         ],
         [
-          0.056366310093929756,
+          164.49535813380209,
           0.0
         ],
         [
-          0.05829880781376318,
+          164.73455176863084,
           0.0
         ],
         [
-          0.06066778422868188,
+          165.96552936083825,
           0.0
         ],
         [
-          0.06303676064360057,
+          167.19650695304566,
           0.0
         ],
         [
-          0.06540573705851926,
+          168.42748454525307,
           0.0
         ],
         [
-          0.08909550120770625,
+          172.0340398974043,
           0.0
         ],
         [
-          0.09280001741842829,
+          175.64059524955556,
           0.0
         ],
         [
-          0.09574786203389758,
+          179.2471506017068,
           0.0
         ],
         [
-          0.09869570664936687,
+          196.48491242496618,
           0.0
         ],
         [
-          0.10099207719472714,
+          213.72267424822556,
           0.0
         ],
         [
-          0.1032884477400874,
+          230.96043607148493,
           0.0
         ],
         [
-          0.10558481828544766,
+          256.216460721343,
           0.0
         ],
         [
-          0.11017755937616817,
+          281.4724853712011,
           0.0
         ],
         [
-          0.11477030046688869,
+          298.21839993404154,
           0.0
-        ],
+        ]
+      ],
+      "title": "\u03913 (Rad/S\u00b2) x Time (S)",
+      "inputs": [
+        "Time (s)"
+      ],
+      "outputs": [
+        "\u03b13 (rad/s\u00b2)"
+      ],
+      "interpolation": "spline",
+      "extrapolation": "zero",
+      "signature": {
+        "module": "rocketpy.mathutils.function",
+        "name": "Function",
+        "hash": 8532846656240
+      }
+    },
+    "R1": {
+      "source": [
         [
-          0.1193630415576092,
+          0.0,
           0.0
         ],
         [
-          0.13127045763130013,
+          0.00140955829402094,
           0.0
         ],
         [
-          0.14317787370499105,
+          0.00281911658804188,
           0.0
         ],
         [
-          0.14995992644651876,
+          0.00563823317608376,
           0.0
         ],
         [
-          0.1542011028620784,
+          0.00845734976412564,
           0.0
         ],
         [
-          0.15844227927763802,
+          0.01127646635216752,
           0.0
         ],
         [
-          0.16268345569319764,
+          0.039467632232586314,
           0.0
         ],
         [
-          0.1711658085243169,
+          0.04085528032029989,
           0.0
         ],
         [
-          0.17964816135543615,
+          0.04224292840801347,
           0.0
         ],
         [
-          0.1881305141865554,
+          0.04501822458344063,
           0.0
         ],
         [
-          0.19446574773727407,
+          0.047793520758867794,
           0.0
         ],
         [
-          0.20080098128799273,
+          0.050568816934294956,
           0.0
         ],
         [
-          0.2056611859339936,
+          0.051535065794208836,
           0.0
         ],
         [
-          0.21052139057999447,
+          0.052501314654122715,
           0.0
         ],
         [
-          0.21538159522599534,
+          0.05443381237395048,
           0.0
         ],
         [
-          0.22510200451799706,
+          0.056366310093778245,
           0.0
         ],
         [
-          0.23482241380999877,
+          0.05829880781360601,
           0.0
         ],
         [
-          0.24454282310200048,
+          0.06066778422864502,
           0.0
         ],
         [
-          0.2542632323940022,
+          0.06303676064368403,
           0.0
         ],
         [
-          0.35146732531401936,
+          0.06540573705872305,
           0.0
         ],
         [
-          0.3632465986442917,
+          0.08909550120911316,
           0.0
         ],
         [
-          0.3693545968582991,
+          0.09280001741983737,
           0.0
         ],
         [
-          0.37546259507230645,
+          0.09574786203637055,
           0.0
         ],
         [
-          0.3876785915003212,
+          0.09869570665290373,
           0.0
         ],
         [
-          0.39989458792833593,
+          0.10099207719695144,
           0.0
         ],
         [
-          0.4121105843563507,
+          0.10328844774099916,
           0.0
         ],
         [
-          0.4714932108541475,
+          0.10558481828504687,
           0.0
         ],
         [
-          0.5078257800637102,
+          0.1101775593731423,
           0.0
         ],
         [
-          0.5343429255049618,
+          0.11477030046123773,
           0.0
         ],
         [
-          0.5608600709462134,
+          0.11936304154933317,
           0.0
         ],
         [
-          0.587377216387465,
+          0.1312706469438581,
           0.0
         ],
         [
-          0.6404115072699682,
+          0.14317825233838302,
           0.0
         ],
         [
-          0.6934457981524714,
+          0.1499601229088181,
           0.0
         ],
         [
-          0.7464800890349746,
+          0.1542012180187087,
           0.0
         ],
         [
-          0.7995143799174779,
+          0.1584423131285993,
           0.0
         ],
         [
-          0.8131556786423583,
+          0.1626834082384899,
           0.0
         ],
         [
-          0.8267969773672387,
+          0.1711655984582711,
           0.0
         ],
         [
-          0.8404382760921191,
+          0.17964778867805228,
           0.0
         ],
         [
-          0.8773817713324279,
+          0.18812997889783348,
           0.0
         ],
         [
-          0.9143252665727367,
+          0.19446537171097383,
           0.0
         ],
         [
-          0.9512687618130455,
+          0.20080076452411422,
           0.0
         ],
         [
-          0.9671044469204755,
+          0.20566109450366143,
           0.0
         ],
         [
-          0.9987682629763311,
+          0.21052142448320865,
           0.0
         ],
         [
-          1.0182059593067265,
+          0.21538175446275587,
           0.0
         ],
         [
-          1.037643655637122,
+          0.22510241442185028,
           0.0
         ],
         [
-          1.0570813519675175,
+          0.23482307438094469,
           0.0
         ],
         [
-          1.0878522163238507,
+          0.2445437343400391,
           0.0
         ],
         [
-          1.1186230806801838,
+          0.2542643942991335,
           0.0
         ],
         [
-          1.1439344065815038,
+          0.3514709938900776,
           0.0
         ],
         [
-          1.1692457324828238,
+          0.36324670161934375,
           0.0
         ],
         [
-          1.1945570583841438,
-          0.0
+          0.3693547037882063,
+          2.0065391870367006e-05
         ],
         [
-          1.2316667865519533,
-          0.0
+          0.3754627059570688,
+          4.138072405465255e-05
         ],
         [
-          1.2687765147197627,
-          0.0
+          0.3876787102947939,
+          8.743796113332085e-05
         ],
         [
-          1.3058862428875722,
-          0.0
+          0.39989471463251897,
+          0.00013878329197485238
         ],
         [
-          1.3429959710553816,
-          0.0
+          0.41211071897024404,
+          0.0001956288720833939
         ],
         [
-          1.4022433435144068,
-          0.0
+          0.47147904178591876,
+          0.0005565793178724676
         ],
         [
-          1.447124093183637,
-          0.0
+          0.5078212847273655,
+          0.0008533632172252207
         ],
         [
-          1.4920048428528674,
-          0.0
+          0.5343387025617514,
+          0.0011089924910216034
         ],
         [
-          1.5261259080406766,
-          0.0
+          0.5608561203961373,
+          0.001398547122875524
         ],
         [
-          1.5602469732284858,
-          0.0
+          0.5873735382305232,
+          0.001722472294650316
         ],
         [
-          1.594368038416295,
-          0.0
+          0.6404083738992948,
+          0.0024727451255177886
         ],
         [
-          1.6284891036041043,
-          0.0
+          0.6934432095680665,
+          0.0033505599225290782
         ],
         [
-          1.6626101687919135,
-          0.0
+          0.7464780452368381,
+          0.004333784630156335
         ],
         [
-          1.6967312339797227,
-          0.0
+          0.7995128809056098,
+          0.005383773090133702
         ],
         [
-          1.730852299167532,
-          0.0
+          0.813164227469089,
+          0.005658255940497064
         ],
         [
-          1.770204581699234,
-          0.0
+          0.8268155740325682,
+          0.005932258688896995
         ],
         [
-          1.809556864230936,
-          0.0
+          0.8404669205960474,
+          0.006204503004845112
         ],
         [
-          1.8489091467626382,
-          0.0
+          0.8775732859954444,
+          0.006924188983955771
         ],
         [
-          1.8882614292943403,
-          0.0
+          0.9146796513948413,
+          0.007590008034862235
         ],
         [
-          1.9276137118260424,
-          0.0
+          0.9517860167942382,
+          0.008167316918105036
         ],
         [
-          1.9669659943577444,
-          0.0
+          0.9674325642455079,
+          0.008375058155283575
         ],
         [
-          2.0063182768894463,
-          0.0
+          0.9990075872778321,
+          0.008714099338860904
         ],
         [
-          2.0456705594211484,
-          0.0
+          1.0183793592598076,
+          0.008859758109201058
         ],
         [
-          2.0850228419528505,
-          0.0
+          1.037751131241783,
+          0.00895100682736476
         ],
         [
-          2.1243751244845526,
-          0.0
+          1.0571229032237586,
+          0.00898231895391963
         ],
         [
-          2.1637274070162547,
-          0.0
+          1.0878788324799102,
+          0.00889772255551351
         ],
         [
-          2.2030796895479567,
-          0.0
+          1.118634761736062,
+          0.008631782275461805
         ],
         [
-          2.242431972079659,
-          0.0
+          1.1439443303803107,
+          0.008265468371292578
         ],
         [
-          2.281784254611361,
-          0.0
+          1.1692538990245596,
+          0.007760113702570344
         ],
         [
-          2.321136537143063,
-          0.0
+          1.1945634676688084,
+          0.0071129604944962475
         ],
         [
-          2.360488819674765,
-          0.0
+          1.2316568052102488,
+          0.005904469371784843
         ],
         [
-          2.399841102206467,
-          0.0
+          1.2687501427516892,
+          0.004404923523815763
         ],
         [
-          2.4391933847381693,
-          0.0
+          1.3058434802931296,
+          0.0026554685112216434
         ],
         [
-          2.4785456672698714,
-          0.0
+          1.34293681783457,
+          0.0007177220442131958
         ],
         [
-          2.5178979498015734,
-          0.0
+          1.4021386812930872,
+          -0.002549669559560864
         ],
         [
-          2.5572502323332755,
-          0.0
+          1.447031703480718,
+          -0.004934195283177683
         ],
         [
-          2.5966025148649776,
-          0.0
+          1.491924725668349,
+          -0.006982411262889688
         ],
         [
-          2.6359547973966797,
-          0.0
+          1.5260726318617992,
+          -0.00815732098836643
         ],
         [
-          2.675307079928382,
-          0.0
+          1.5602205380552494,
+          -0.008888687037468226
         ],
         [
-          2.714659362460084,
-          0.0
+          1.5943684442486996,
+          -0.009092001240638208
         ],
         [
-          2.7466638251883717,
-          0.0
+          1.6285163504421498,
+          -0.00870750920936222
         ],
         [
-          2.7786682879166595,
-          0.0
+          1.6626642566356,
+          -0.007709082050956304
         ],
         [
-          2.8106727506449474,
-          0.0
+          1.6968121628290502,
+          -0.0061120297033881825
         ],
         [
-          2.842677213373235,
-          0.0
+          1.7309600690225004,
+          -0.003978556605509542
         ],
         [
-          2.874681676101523,
-          0.0
+          1.770308643380365,
+          -0.000997820301054698
         ],
         [
-          2.9108918137851214,
-          0.0
+          1.8096572177382295,
+          0.0023053612810506104
         ],
         [
-          2.9402847513530936,
-          0.0
+          1.849005792096094,
+          0.005608728514576191
         ],
         [
-          2.9637983886571173,
-          0.0
+          1.8883543664539586,
+          0.008554133785996874
         ],
         [
-          2.987312025961141,
-          0.0
+          1.9277029408118231,
+          0.010789936443694133
         ],
         [
-          2.9914721939592726,
-          0.0
+          1.9670515151696877,
+          0.012014971258035058
         ],
         [
-          2.995632361957404,
-          0.0
+          2.006400089527552,
+          0.012025208874811618
         ],
         [
-          2.9997925299555357,
-          0.0
+          2.0457486638854165,
+          0.010757043648452187
         ],
         [
-          3.0010806713261253,
-          0.0
+          2.085097238243281,
+          0.008318024936899008
         ],
         [
-          3.002368812696715,
-          0.0
+          2.124445812601145,
+          0.004994453975429173
         ],
         [
-          3.0049450954378942,
-          0.0
+          2.1637943869590095,
+          0.001229845108199134
         ],
         [
-          3.0075213781790735,
-          0.0
+          2.203142961316874,
+          -0.0024269662356630585
         ],
         [
-          3.031179520120233,
-          0.0
+          2.242491535674738,
+          -0.005400410544502133
         ],
         [
-          3.0548376620613924,
-          0.0
+          2.2818401100326025,
+          -0.0071811849802200685
         ],
         [
-          3.078495804002552,
-          0.0
+          2.3211886843904668,
+          -0.0074260254745248545
         ],
         [
-          3.1021539459437113,
-          0.0
+          2.360537258748331,
+          -0.006041187925767962
         ],
         [
-          3.1205915242496687,
-          0.0
+          2.3998858331061954,
+          -0.0032276755751865236
         ],
         [
-          3.139029102555626,
-          0.0
+          2.4392344074640597,
+          0.0005284914334304569
         ],
         [
-          3.1574666808615834,
-          0.0
+          2.478582981821924,
+          0.0045290097164790485
         ],
         [
-          3.1943418374734978,
-          0.0
+          2.5179315561797884,
+          0.007989562708310981
         ],
         [
-          3.223214302746968,
-          0.0
+          2.5572801305376527,
+          0.010199563328223455
         ],
         [
-          3.252086768020438,
-          0.0
+          2.596628704895517,
+          0.010683120426435449
         ],
         [
-          3.2809592332939084,
-          0.0
+          2.6359772792533813,
+          0.009324647915469232
         ],
         [
-          3.2861061530217075,
-          0.0
+          2.6753258536112456,
+          0.006423970772634981
         ],
         [
-          3.2912530727495066,
-          0.0
+          2.71467442796911,
+          0.0026563658355819486
         ],
         [
-          3.2963999924773058,
-          0.0
+          2.746682540487563,
+          -0.0004064669171104042
         ],
         [
-          3.3042992470019175,
-          0.0
+          2.778690653006016,
+          -0.002912606010670499
         ],
         [
-          3.312198501526529,
-          0.0
+          2.810698765524469,
+          -0.004430216326022894
         ],
         [
-          3.320097756051141,
-          0.0
+          2.842706878042922,
+          -0.004694946693625227
         ],
         [
-          3.329990894740742,
-          0.0
+          2.874714990561375,
+          -0.0036648088330285436
         ],
         [
-          3.339884033430343,
-          0.0
+          2.9109277644238576,
+          -0.0011918173248353873
         ],
         [
-          3.349777172119944,
-          0.0
+          2.940339896156497,
+          0.001440225110534574
         ],
         [
-          3.3683253555356067,
-          0.0
+          2.9638563968017557,
+          0.0036196516603241927
         ],
         [
-          3.3868735389512694,
-          0.0
+          2.9873728974470146,
+          0.005612835912292515
         ],
         [
-          3.4020443640890705,
-          0.0
+          2.991532758872659,
+          0.005929120167122456
         ],
         [
-          3.4113407650123997,
-          0.0
+          2.995692620298303,
+          0.006231985446865009
         ],
         [
-          3.420637165935729,
-          0.0
+          2.999852481723947,
+          0.006520598374022583
         ],
         [
-          3.429933566859058,
-          0.0
+          3.0011406359017885,
+          0.006606411566231938
         ],
         [
-          3.446308281894537,
-          0.0
+          3.00242879007963,
+          0.006690715314997689
         ],
         [
-          3.4626829969300164,
-          0.0
+          3.0050050984353125,
+          0.006853367972571519
         ],
         [
-          3.4790577119654955,
-          0.0
+          3.007581406790995,
+          0.007009604098056366
         ],
         [
-          3.5098113349838638,
-          0.0
+          3.0312400452524226,
+          0.008138048963012415
         ],
         [
-          3.534175816549051,
-          0.0
+          3.05489868371385,
+          0.0086392663131582
         ],
         [
-          3.558540298114238,
-          0.0
+          3.0785573221752776,
+          0.008497248636307127
         ],
         [
-          3.582904779679425,
-          0.0
+          3.102215960636705,
+          0.007757680276272486
         ],
         [
-          3.615075076269808,
-          0.0
+          3.120664542586555,
+          0.0068243895864606215
         ],
         [
-          3.6472453728601906,
-          0.0
+          3.139113124536405,
+          0.005654970481876878
         ],
         [
-          3.6794156694505733,
-          0.0
+          3.1575617064862547,
+          0.004334405449247534
         ],
         [
-          3.711585966040956,
-          0.0
+          3.194458870385954,
+          0.0015838557506609083
         ],
         [
-          3.7510748617223286,
-          0.0
+          3.2233916577517485,
+          -0.00026965406506878654
         ],
         [
-          3.790563757403701,
-          0.0
+          3.252324445117543,
+          -0.0015007633607352032
         ],
         [
-          3.830052653085074,
-          0.0
+          3.2812572324833376,
+          -0.001921117165527716
         ],
         [
-          3.862940498739986,
-          0.0
+          3.2864042093564865,
+          -0.0018999675586793617
         ],
         [
-          3.895828344394898,
-          0.0
+          3.2915511862296354,
+          -0.0018515214174103657
         ],
         [
-          3.901564462162616,
-          0.0
+          3.2966981631027843,
+          -0.001776633581729276
         ],
         [
-          3.9073005799303346,
-          0.0
+          3.3044731976480057,
+          -0.001615725374126766
         ],
         [
-          3.913036697698053,
-          0.0
+          3.312248232193227,
+          -0.001400013408835217
         ],
         [
-          3.924489906398398,
-          0.0
+          3.3200232667384486,
+          -0.001133205388669807
         ],
         [
-          3.935943115098743,
-          0.0
+          3.3299608976332786,
+          -0.0007256862044608282
         ],
         [
-          3.947396323799088,
-          0.0
+          3.3398985285281086,
+          -0.000252659191960505
         ],
         [
-          3.975516795322242,
-          0.0
+          3.3498361594229387,
+          0.00027450859811699866
         ],
         [
-          4.003637266845396,
-          0.0
+          3.3684063767347974,
+          0.0013479072105013557
         ],
         [
-          4.03175773836855,
-          0.0
+          3.386976594046656,
+          0.0024786258292577813
         ],
         [
-          4.071718134752553,
-          0.0
+          3.4020328166662903,
+          0.0033889336177352633
         ],
         [
-          4.111678531136556,
-          0.0
+          3.4113057466050263,
+          0.003929244974737043
         ],
         [
-          4.151638927520558,
-          0.0
+          3.4205786765437622,
+          0.004439572882202961
         ],
         [
-          4.191599323904561,
-          0.0
+          3.429851606482498,
+          0.004910869646173369
         ],
         [
-          4.247720558129715,
-          0.0
+          3.4462125806335115,
+          0.0056192703495912865
         ],
         [
-          4.293788946145795,
-          0.0
+          3.462573554784525,
+          0.006150909760244007
         ],
         [
-          4.3319865166419085,
-          0.0
+          3.4789345289355382,
+          0.006486151439733737
         ],
         [
-          4.370184087138022,
-          0.0
+          3.5099101021393686,
+          0.006569781385872308
         ],
         [
-          4.408381657634136,
-          0.0
+          3.5343946919875657,
+          0.006169145986417228
         ],
         [
-          4.44657922813025,
-          0.0
+          3.558879281835763,
+          0.00542562069512259
         ],
         [
-          4.484776798626363,
-          0.0
+          3.58336387168396,
+          0.004442606346822393
         ],
         [
-          4.527459427885128,
-          0.0
+          3.6154318916074843,
+          0.002960111003180316
         ],
         [
-          4.570142057143892,
-          0.0
+          3.6474999115310087,
+          0.001547857808033729
         ],
         [
-          4.612824686402656,
-          0.0
+          3.679567931454533,
+          0.0005019426511425904
         ],
         [
-          4.655507315661421,
-          0.0
+          3.7116359513780575,
+          2.0137136399314194e-05
         ],
         [
-          4.698189944920185,
-          0.0
+          3.750677226849746,
+          0.0002945492737809637
         ],
         [
-          4.752240597633832,
-          0.0
+          3.789718502321435,
+          0.0013794003038970425
         ],
         [
-          4.806291250347479,
-          0.0
+          3.8287597777931235,
+          0.0028642460211146443
         ],
         [
-          4.8603419030611255,
-          0.0
+          3.867801053264812,
+          0.004237123860931543
         ],
         [
-          4.914392555774772,
-          0.0
+          3.906842328736501,
+          0.005075403569150077
         ],
         [
-          4.968443208488419,
-          0.0
+          3.9127975041938576,
+          0.005136838343739562
         ],
         [
-          5.022493861202066,
-          0.0
+          3.9187526796512144,
+          0.005181163326458271
         ],
         [
-          5.076544513915713,
-          0.0
+          3.9247078551085712,
+          0.00520861185150783
         ],
         [
-          5.13059516662936,
-          0.0
+          3.9366182060232844,
+          0.0052141381630867786
         ],
         [
-          5.1846458193430065,
-          0.0
+          3.9485285569379975,
+          0.0051559456465086985
         ],
         [
-          5.238696472056653,
-          0.0
+          3.9604389078527107,
+          0.005037930151267429
         ],
         [
-          5.2927471247703,
-          0.0
+          3.9894733064604,
+          0.00453496970999342
         ],
         [
-          5.342460668455986,
-          0.0
+          4.018507705068089,
+          0.003808218611590358
         ],
         [
-          5.392174212141671,
-          0.0
+          4.047542103675778,
+          0.002984141224872737
         ],
         [
-          5.441887755827357,
-          0.0
+          4.0765765022834675,
+          0.0021962064809356173
         ],
         [
-          5.491601299513042,
-          0.0
+          4.119155795005119,
+          0.0013373209613753644
         ],
         [
-          5.554603109165186,
-          0.0
+          4.16173508772677,
+          0.0010334727596157866
         ],
         [
-          5.617604918817331,
-          0.0
+          4.1691207712068685,
+          0.001051061506454381
         ],
         [
-          5.6677507107483684,
-          0.0
+          4.176506454686967,
+          0.0010877198862880462
         ],
         [
-          5.717896502679406,
-          0.0
+          4.1838921381670655,
+          0.0011423691515624313
         ],
         [
-          5.768042294610444,
-          0.0
+          4.1986635051272625,
+          0.0012984177716604249
         ],
         [
-          5.818188086541482,
-          0.0
+          4.2134348720874595,
+          0.0015089486100009469
         ],
         [
-          5.878315251829882,
-          0.0
+          4.2282062390476565,
+          0.0017623872432854315
         ],
         [
-          5.928299499698518,
-          0.0
+          4.264323210631898,
+          0.0024969958406429794
         ],
         [
-          5.978283747567154,
-          0.0
+          4.300440182216139,
+          0.0032547753838735485
         ],
         [
-          6.02826799543579,
-          0.0
+          4.33655715380038,
+          0.003866616869788135
         ],
         [
-          6.078252243304426,
-          0.0
+          4.372674125384622,
+          0.004209045255588617
         ],
         [
-          6.14293081584079,
-          0.0
+          4.416044435312633,
+          0.004180617057323776
         ],
         [
-          6.196765840796611,
-          0.0
+          4.459414745240645,
+          0.0037091242771353766
         ],
         [
-          6.250600865752432,
-          0.0
+          4.502785055168657,
+          0.002980862438775893
         ],
         [
-          6.304435890708253,
-          0.0
+          4.546155365096668,
+          0.002256418790500831
         ],
         [
-          6.3582709156640735,
-          0.0
+          4.58952567502468,
+          0.0017746952452899786
         ],
         [
-          6.433461438883678,
-          0.0
+          4.632895984952691,
+          0.001673524254829316
         ],
         [
-          6.493499513622796,
-          0.0
+          4.676266294880703,
+          0.0019526159665482767
         ],
         [
-          6.553537588361913,
-          0.0
+          4.719636604808715,
+          0.0024854649724235815
         ],
         [
-          6.613575663101031,
-          0.0
+          4.768224902129621,
+          0.0031438994061392216
         ],
         [
-          6.6736137378401486,
-          0.0
+          4.816813199450527,
+          0.0036119072774243657
         ],
         [
-          6.752474107792829,
-          0.0
+          4.865401496771433,
+          0.0037255664322179286
         ],
         [
-          6.813959694855546,
-          0.0
+          4.913989794092339,
+          0.003472400402153212
         ],
         [
-          6.875445281918263,
-          0.0
+          4.962578091413246,
+          0.0029795492968882472
         ],
         [
-          6.93693086898098,
-          0.0
+          5.016300880486902,
+          0.002365760497266306
         ],
         [
-          6.998416456043697,
-          0.0
+          5.070023669560559,
+          0.0019215336120240534
         ],
         [
-          7.079711027784927,
-          0.0
+          5.123746458634216,
+          0.0016470942183824896
         ],
         [
-          7.1413765714336215,
-          0.0
+          5.177469247707872,
+          0.0017707324917357898
         ],
         [
-          7.203042115082316,
-          0.0
+          5.219601255563254,
+          0.0015714189953153945
         ],
         [
-          7.264707658731011,
-          0.0
+          5.261733263418636,
+          0.0011115402077820284
         ],
         [
-          7.326373202379705,
-          0.0
+          5.3038652712740175,
+          0.0007295996321547895
         ],
         [
-          7.4088916340702395,
-          0.0
+          5.345997279129399,
+          0.00078012456827407
         ],
         [
-          7.471438984396619,
-          0.0
+          5.388129286984781,
+          0.0013909131205803059
         ],
         [
-          7.533986334722999,
-          0.0
+          5.438594166103664,
+          0.0025854093292046205
         ],
         [
-          7.596533685049379,
-          0.0
+          5.489059045222548,
+          0.003737318606866425
         ],
         [
-          7.659081035375759,
-          0.0
+          5.539523924341431,
+          0.004318456912787504
         ],
         [
-          7.748666795076123,
-          0.0
+          5.589988803460314,
+          0.004146802493304792
         ],
         [
-          7.759103537845691,
-          0.0
+          5.6404536825791975,
+          0.003436236446583539
         ],
         [
-          7.769540280615259,
-          0.0
+          5.690918561698081,
+          0.002586733998588004
         ],
         [
-          7.779977023384827,
-          0.0
+          5.741383440816964,
+          0.0019340021317874874
         ],
         [
-          7.800850508923962,
-          0.0
+          5.7918483199358475,
+          0.001639073094660286
         ],
         [
-          7.821723994463097,
-          0.0
+          5.842313199054731,
+          0.0017140195207696052
         ],
         [
-          7.842597480002232,
-          0.0
+          5.900175444574162,
+          0.00215753756323343
         ],
         [
-          7.900172892552435,
-          0.0
+          5.958037690093594,
+          0.002775561750585309
         ],
         [
-          7.957748305102638,
-          0.0
+          6.015899935613025,
+          0.0033107190216888367
         ],
         [
-          8.01532371765284,
-          0.0
+          6.073762181132457,
+          0.003555513980547071
         ],
         [
-          8.072899130203044,
-          0.0
+          6.1316244266518884,
+          0.003435207564796329
         ],
         [
-          8.14886572486838,
-          0.0
+          6.18948667217132,
+          0.0030309412665808916
         ],
         [
-          8.224832319533714,
-          0.0
+          6.2473489176907515,
+          0.0025329627919490035
         ],
         [
-          8.30079891419905,
-          0.0
+          6.305211163210183,
+          0.0021504214635941843
         ],
         [
-          8.376765508864384,
-          0.0
+          6.374869724777001,
+          0.002007186384564185
         ],
         [
-          8.45273210352972,
-          0.0
+          6.44452828634382,
+          0.002238147859917594
         ],
         [
-          8.5564809550127,
-          0.0
+          6.514186847910638,
+          0.0026889865590742582
         ],
         [
-          8.632458997358304,
-          0.0
+          6.583845409477457,
+          0.0031174741274039657
         ],
         [
-          8.708437039703908,
-          0.0
+          6.653503971044275,
+          0.0033154452520241812
         ],
         [
-          8.784415082049511,
-          0.0
+          6.723162532611093,
+          0.0032016298245352423
         ],
         [
-          8.860393124395115,
-          0.0
+          6.792821094177912,
+          0.0028473098949618305
         ],
         [
-          8.936371166740718,
-          0.0
+          6.856149583247434,
+          0.0024889944476068114
         ],
         [
-          9.012349209086322,
-          0.0
+          6.919478072316956,
+          0.002231214506729454
         ],
         [
-          9.088327251431926,
-          0.0
+          6.982806561386478,
+          0.002145040004661987
         ],
         [
-          9.16430529377753,
-          0.0
+          7.046135050456,
+          0.0022355040227655574
         ],
         [
-          9.255988954542772,
-          0.0
+          7.109463539525522,
+          0.002451333328256011
         ],
         [
-          9.329184490076974,
-          0.0
+          7.172792028595044,
+          0.0027095937543138993
         ],
         [
-          9.402380025611176,
-          0.0
+          7.236120517664566,
+          0.0029257920692975564
         ],
         [
-          9.475575561145378,
-          0.0
+          7.299449006734088,
+          0.0030395355211078785
         ],
         [
-          9.54877109667958,
-          0.0
+          7.36277749580361,
+          0.003028977861852394
         ],
         [
-          9.621966632213782,
-          0.0
+          7.441907419493829,
+          0.0028700547454310167
         ],
         [
-          9.69992497595067,
-          0.0
+          7.521037343184047,
+          0.002651258806132797
         ],
         [
-          9.77788331968756,
-          0.0
+          7.600167266874266,
+          0.0024765960759650114
         ],
         [
-          9.855841663424448,
-          0.0
+          7.696303025687341,
+          0.002388288376900333
         ],
         [
-          9.933800007161336,
-          0.0
+          7.7924387845004155,
+          0.0024777992282234195
         ],
         [
-          10.011758350898225,
-          0.0
+          7.88857454331349,
+          0.0026763554329601418
         ],
         [
-          10.089716694635113,
-          0.0
+          7.984710302126565,
+          0.002847692979478099
         ],
         [
-          10.167675038372002,
-          0.0
+          8.08084606093964,
+          0.002887090448516478
         ],
         [
-          10.260259956542143,
-          0.0
+          8.176981819752715,
+          0.0027811096980440452
         ],
         [
-          10.331983881553601,
-          0.0
+          8.27311757856579,
+          0.002604495762621485
         ],
         [
-          10.403707806565059,
-          0.0
+          8.374791072592975,
+          0.0024678483528269984
         ],
         [
-          10.475431731576517,
-          0.0
+          8.47646456662016,
+          0.002413316185555712
         ],
         [
-          10.570210949134573,
-          0.0
+          8.578138060647346,
+          0.00245427251847954
         ],
         [
-          10.664990166692629,
-          0.0
+          8.679811554674531,
+          0.0025565124930590705
         ],
         [
-          10.759769384250685,
-          0.0
+          8.781485048701716,
+          0.0026686018372847047
         ],
         [
-          10.854548601808741,
-          0.0
+          8.883158542728902,
+          0.0027518493411185373
         ],
         [
-          10.949327819366797,
-          0.0
+          9.00524652036951,
+          0.0027949852161494298
         ],
         [
-          11.044107036924853,
-          0.0
+          9.12733449801012,
+          0.0027571057345255646
         ],
         [
-          11.138886254482909,
-          0.0
+          9.249422475650729,
+          0.002667303051939528
         ],
         [
-          11.223078569708694,
-          0.0
+          9.371510453291338,
+          0.0025676837207291967
         ],
         [
-          11.307270884934479,
-          0.0
+          9.493598430931947,
+          0.0024870307491919957
         ],
         [
-          11.391463200160263,
-          0.0
+          9.615686408572556,
+          0.0024516145237856186
         ],
         [
-          11.526298565803183,
-          0.0
+          9.638495054883064,
+          0.0024531466874133656
         ],
         [
-          11.629928166907957,
-          0.0
+          9.661303701193573,
+          0.002459830894076805
         ],
         [
-          11.733557768012732,
-          0.0
+          9.684112347504081,
+          0.0024721698952260337
         ],
         [
-          11.837187369117506,
-          0.0
+          9.729729640125099,
+          0.002511680780942897
         ],
         [
-          11.940816970222281,
-          0.0
+          9.775346932746116,
+          0.0025661453300351604
         ],
         [
-          12.064752353445058,
-          0.0
+          9.820964225367133,
+          0.0026286860604690125
         ],
         [
-          12.188687736667836,
-          0.0
+          9.921906879777866,
+          0.002752617121886896
         ],
         [
-          12.312623119890613,
-          0.0
+          10.004312108890508,
+          0.0028208619862056905
         ],
         [
-          12.43655850311339,
-          0.0
+          10.08671733800315,
+          0.0028431349671915254
         ],
         [
-          12.560493886336168,
-          0.0
+          10.16912256711579,
+          0.002820505258464782
         ],
         [
-          12.684429269558946,
-          0.0
+          10.318508402311611,
+          0.0027146744710341932
         ],
         [
-          12.808364652781723,
-          0.0
+          10.416310959001898,
+          0.0026359201759746454
         ],
         [
-          12.831782867710663,
-          0.0
+          10.514113515692184,
+          0.0025954457993671055
         ],
         [
-          12.855201082639603,
-          0.0
+          10.61191607238247,
+          0.002607767339042625
         ],
         [
-          12.878619297568543,
-          0.0
+          10.709718629072757,
+          0.002664969765583795
         ],
         [
-          12.925455727426423,
-          0.0
+          10.84073505366698,
+          0.002760544514561508
         ],
         [
-          12.972292157284302,
-          0.0
+          10.935791309767657,
+          0.0028172413502536527
         ],
         [
-          13.019128587142182,
-          0.0
+          11.030847565868333,
+          0.002841167722029707
         ],
         [
-          13.153906925069139,
-          0.0
+          11.12590382196901,
+          0.002830740507200504
         ],
         [
-          13.288685262996095,
-          0.0
+          11.220960078069686,
+          0.002796921717845402
         ],
         [
-          13.423463600923052,
-          0.0
+          11.34293278943959,
+          0.0027479632490122106
         ],
         [
-          13.558241938850008,
-          0.0
+          11.4367198655186,
+          0.0027237043953527978
         ],
         [
-          13.693020276776965,
-          0.0
+          11.530506941597611,
+          0.0027221149950244204
         ],
         [
-          13.827798614703921,
-          0.0
+          11.624294017676622,
+          0.002745075374898378
         ],
         [
-          13.962576952630878,
-          0.0
+          11.718081093755632,
+          0.0027865449247303268
         ],
         [
-          14.097355290557834,
-          0.0
+          11.830682395509069,
+          0.0028435869956310255
         ],
         [
-          14.23213362848479,
-          0.0
+          11.943283697262505,
+          0.0028903243194309154
         ],
         [
-          14.366911966411747,
-          0.0
+          12.055884999015941,
+          0.0029138173386016562
         ],
         [
-          14.54025856584105,
-          0.0
+          12.168486300769377,
+          0.0029121841457857875
         ],
         [
-          14.682392980564643,
-          0.0
+          12.29994439393496,
+          0.0028915739168819963
         ],
         [
-          14.824527395288236,
-          0.0
+          12.404633593778348,
+          0.0028731147350493673
         ],
         [
-          14.966661810011828,
-          0.0
+          12.509322793621736,
+          0.002865490470749102
         ],
         [
-          15.108796224735421,
-          0.0
+          12.614011993465125,
+          0.002875279037975351
         ],
         [
-          15.286616031474669,
-          0.0
+          12.718701193308513,
+          0.0029028441559448706
         ],
         [
-          15.464435838213916,
-          0.0
+          12.865684810686352,
+          0.0029585592077570246
         ],
         [
-          15.642255644953163,
-          0.0
+          12.973565119592086,
+          0.003002840682723609
         ],
         [
-          15.82007545169241,
-          0.0
+          13.08144542849782,
+          0.0030397391196946956
         ],
         [
-          15.997895258431658,
-          0.0
+          13.189325737403555,
+          0.0030641026235983036
         ],
         [
-          16.175715065170905,
-          0.0
+          13.29720604630929,
+          0.003075473342260792
         ],
         [
-          16.353534871910153,
-          0.0
+          13.455915925693203,
+          0.003078565147884271
         ],
         [
-          16.5313546786494,
-          0.0
+          13.572668910835402,
+          0.003078536658872602
         ],
         [
-          16.709174485388647,
-          0.0
+          13.6894218959776,
+          0.0030861195172603413
         ],
         [
-          16.886994292127895,
-          0.0
+          13.8061748811198,
+          0.003106803699489948
         ],
         [
-          17.0827216691956,
-          0.0
+          13.922927866261999,
+          0.003141531841281471
         ],
         [
-          17.245756216665097,
-          0.0
+          14.085961813353116,
+          0.003205040692291548
         ],
         [
-          17.408790764134594,
-          0.0
+          14.204687031875425,
+          0.0032555954547118034
         ],
         [
-          17.57182531160409,
-          0.0
+          14.323412250397734,
+          0.0033015803308995614
         ],
         [
-          17.734859859073588,
-          0.0
+          14.442137468920043,
+          0.0033383686404418957
         ],
         [
-          17.87633414755382,
-          0.0
+          14.560862687442352,
+          0.003365092569430712
         ],
         [
-          17.989632326456782,
-          0.0
+          14.727812813776477,
+          0.0033922023778792717
         ],
         [
-          18.102930505359744,
-          0.0
+          14.852763845864722,
+          0.0034107036139923073
         ],
         [
-          18.216228684262706,
-          0.0
+          14.977714877952966,
+          0.003435124403714074
         ],
         [
-          18.392123725075212,
-          0.0
+          15.10266591004121,
+          0.0034701445402966387
         ],
         [
-          18.568018765887718,
-          0.0
+          15.227616942129455,
+          0.0035172557122282863
         ],
         [
-          18.743913806700224,
-          0.0
+          15.39474055277627,
+          0.0035950450692369463
         ],
         [
-          18.91980884751273,
-          0.0
+          15.526750000917001,
+          0.003663715086597152
         ],
         [
-          19.13456671816614,
-          0.0
+          15.658759449057733,
+          0.0037323252928167473
         ],
         [
-          19.349324588819552,
-          0.0
+          15.790768897198465,
+          0.003796284394989662
         ],
         [
-          19.564082459472964,
-          0.0
+          15.922778345339196,
+          0.0038535290830142795
         ],
         [
-          19.778840330126375,
-          0.0
+          16.079671368014623,
+          0.003914577800867121
         ],
         [
-          19.993598200779786,
-          0.0
+          16.23656439069005,
+          0.0039732160525879235
         ],
         [
-          20.208356071433197,
-          0.0
+          16.393457413365475,
+          0.004036268332573797
         ],
         [
-          20.42311394208661,
-          0.0
+          16.5503504360409,
+          0.004109466643983341
         ],
         [
-          20.63787181274002,
-          0.0
+          16.72307251287968,
+          0.004205736222683422
         ],
         [
-          20.89524769419444,
-          0.0
+          16.895794589718456,
+          0.004318324305726231
         ],
         [
-          21.152623575648857,
-          0.0
+          17.068516666557233,
+          0.004442800093603597
         ],
         [
-          21.409999457103275,
-          0.0
+          17.24123874339601,
+          0.004573158874906709
         ],
         [
-          21.667375338557694,
-          0.0
+          17.413960820234788,
+          0.004704888175853855
         ],
         [
-          21.924751220012112,
-          0.0
+          17.60482627556807,
+          0.004850850421485659
         ],
         [
-          22.18212710146653,
-          0.0
+          17.79569173090135,
+          0.004999746319746085
         ],
         [
-          22.469164792221026,
-          0.0
+          17.98655718623463,
+          0.0051572381456028715
         ],
         [
-          22.75620248297552,
-          0.0
+          18.17742264156791,
+          0.005329247633245889
         ],
         [
-          23.043240173730016,
-          0.0
+          18.368288096901193,
+          0.005519704660120288
         ],
         [
-          23.33027786448451,
-          0.0
+          18.559153552234473,
+          0.005729978452939597
         ],
         [
-          23.617315555239006,
-          0.0
+          18.750019007567754,
+          0.00595952121436128
         ],
         [
-          23.9043532459935,
-          0.0
+          18.940884462901035,
+          0.006207097365027946
         ],
         [
-          24.191390936747997,
-          0.0
+          19.160009857916293,
+          0.00651274552332182
         ],
         [
-          24.419341542299552,
-          0.0
+          19.37913525293155,
+          0.0068420839141725785
         ],
         [
-          24.647292147851108,
-          0.0
+          19.59826064794681,
+          0.007197929506919628
         ],
         [
-          24.875242753402663,
-          0.0
+          19.817386042962067,
+          0.007584523351188892
         ],
         [
-          25.10319335895422,
-          0.0
+          20.036511437977325,
+          0.008006697396988283
         ],
         [
-          25.331143964505774,
-          0.0
+          20.343119545325326,
+          0.00866560631907826
         ],
         [
-          25.51872139829633,
-          0.0
+          20.649727652673327,
+          0.009415334802591619
         ],
         [
-          25.706298832086883,
-          0.0
+          20.95633576002133,
+          0.010268111546334314
         ],
         [
-          25.884966627110675,
-          0.0
+          21.26294386736933,
+          0.011236474233349102
         ],
         [
-          25.88571428571429,
-          0.0
+          21.56955197471733,
+          0.012333724724217218
         ],
         [
-          25.891724887187262,
-          0.0
+          21.876160082065333,
+          0.013574010389956176
         ],
         [
-          25.897735488660235,
-          0.0
+          22.182768189413334,
+          0.014971941566976326
         ],
         [
-          25.909756691606184,
-          0.0
+          22.489376296761336,
+          0.016541806021993215
         ],
         [
-          25.921777894552132,
-          0.0
+          22.837549744359293,
+          0.01854938536480543
         ],
         [
-          25.93379909749808,
-          0.0
+          23.18572319195725,
+          0.02081081229308063
         ],
         [
-          26.05401112695755,
-          0.0
+          23.53389663955521,
+          0.023336390767104902
         ],
         [
-          26.17422315641702,
-          0.0
+          23.882070087153167,
+          0.026133783207703595
         ],
         [
-          26.29443518587649,
-          0.0
+          24.230243534751125,
+          0.029214543185228814
         ],
         [
-          26.41464721533596,
-          0.0
+          24.578416982349083,
+          0.032604031819892194
         ],
         [
-          26.590536971802308,
-          0.0
+          24.92659042994704,
+          0.03634951671322797
         ],
         [
-          26.766426728268655,
-          0.0
+          25.274763877545,
+          0.04050729846919413
         ],
         [
-          26.942316484735002,
-          0.0
+          25.544320922023445,
+          0.04400993786474995
         ],
         [
-          27.11820624120135,
-          0.0
+          25.81387796650189,
+          0.04766443809502202
         ],
         [
-          27.294095997667696,
-          0.0
+          25.885098654500275,
+          0.04862736292840937
         ],
         [
-          27.38571428571429,
-          0.0
+          25.88571428571429,
+          0.0486356369337313
         ],
         [
-          27.403707346930535,
-          0.0
+          25.891725275535915,
+          0.04871590114904879
         ],
         [
-          27.42170040814678,
-          0.0
+          25.89773626535754,
+          0.048796059183833444
         ],
         [
-          27.457686530579274,
-          0.0
+          25.90975824500079,
+          0.04895693627299891
         ],
         [
-          27.493672653011767,
-          0.0
+          25.921780224644042,
+          0.04911733036259368
         ],
         [
-          27.52965877544426,
-          0.0
+          25.933802204287293,
+          0.04927719818492526
         ],
         [
-          27.722358182653522,
-          0.0
+          26.05402200071982,
+          0.05083660640796127
         ],
         [
-          27.915057589862784,
-          0.0
+          26.174241797152344,
+          0.05228607393626516
         ],
         [
-          28.107756997072045,
-          0.0
+          26.29446159358487,
+          0.053559547713002156
         ],
         [
-          28.300456404281306,
-          0.0
+          26.414681390017396,
+          0.05457553945972264
         ],
         [
-          28.59167900359794,
-          0.0
+          26.59056092778596,
+          0.05539077051122362
         ],
         [
-          28.882901602914572,
-          0.0
+          26.76644046555452,
+          0.05507483930368909
         ],
         [
-          29.174124202231205,
-          0.0
+          26.942320003323083,
+          0.05319332931127215
         ],
         [
-          29.465346801547838,
-          0.0
+          27.118199541091645,
+          0.04926100801649691
         ],
         [
-          29.75656940086447,
-          0.0
+          27.294079078860207,
+          0.04277068217136741
         ],
         [
-          30.25579246872472,
-          0.0
+          27.38571428571429,
+          0.03821114718592291
         ],
         [
-          30.75501553658497,
-          0.0
+          27.397496400123647,
+          2.841326273489423
         ],
         [
-          31.25423860444522,
-          0.0
+          27.409278514533003,
+          2.810191890425866
         ],
         [
-          31.75346167230547,
-          0.0
+          27.43284274335172,
+          2.749237056660726
         ],
         [
-          32.25268474016572,
-          0.0
+          27.456406972170438,
+          2.6904494229380207
         ],
         [
-          32.75190780802597,
-          0.0
+          27.479971200989155,
+          2.6337268038349957
         ],
         [
-          33.48826295234864,
-          0.0
+          27.597382226258187,
+          2.3788164668298433
         ],
         [
-          34.224618096671314,
-          0.0
+          27.71479325152722,
+          2.1628092208878256
         ],
         [
-          34.96097324099399,
-          0.0
+          27.83220427679625,
+          1.9780176804817589
         ],
         [
-          35.69732838531666,
-          0.0
+          27.949615302065283,
+          1.8184742767610313
         ],
         [
-          36.43368352963933,
-          0.0
+          28.127223521019754,
+          1.6149668068452403
         ],
         [
-          37.18331742700439,
-          0.0
+          28.304831739974226,
+          1.4466879088212694
         ],
         [
-          37.93295132436945,
-          0.0
+          28.482439958928698,
+          1.3050348117816113
         ],
         [
-          38.682585221734506,
-          0.0
+          28.66004817788317,
+          1.1837553480771246
         ],
         [
-          39.432219119099564,
-          0.0
+          28.83765639683764,
+          1.0783252958161609
         ],
         [
-          40.18185301646462,
-          0.0
+          29.142165265211645,
+          0.925328541978912
         ],
         [
-          41.55565606299418,
-          0.0
+          29.44667413358565,
+          0.7982358964615118
         ],
         [
-          42.92945910952374,
-          0.0
+          29.751183001959653,
+          0.6900822687790781
         ],
         [
-          44.3032621560533,
-          0.0
+          30.055691870333657,
+          0.5966583061830277
         ],
         [
-          45.67706520258286,
-          0.0
+          30.36020073870766,
+          0.5152277546966765
         ],
         [
-          47.05086824911242,
-          0.0
+          30.664709607081665,
+          0.4439132424673592
         ],
         [
-          48.62323521534373,
-          0.0
+          31.156066194366023,
+          0.3468347435079556
         ],
         [
-          50.19560218157505,
-          0.0
+          31.64742278165038,
+          0.2683266623516766
         ],
         [
-          51.76796914780636,
-          0.0
+          32.138779368934735,
+          0.20508463983201208
         ],
         [
-          53.340336114037676,
-          0.0
+          32.63013595621909,
+          0.15436010985519918
         ],
         [
-          54.91270308026899,
-          0.0
+          33.12149254350345,
+          0.11383404397748857
         ],
         [
-          55.86204148248446,
-          0.0
+          33.61284913078781,
+          0.08156334551931825
         ],
         [
-          56.811379884699925,
-          0.0
+          34.104205718072166,
+          0.05593227842441728
         ],
         [
-          57.76071828691539,
-          0.0
+          34.59556230535652,
+          0.035614237059342226
         ],
         [
-          58.71005668913086,
-          0.0
+          35.20520071519727,
+          0.01620312823929158
         ],
         [
-          59.701612671241776,
-          0.0
+          35.81483912503802,
+          0.0017043981768467703
         ],
         [
-          60.69316865335269,
-          0.0
+          36.42447753487877,
+          -0.009120587029755567
         ],
         [
-          61.68472463546361,
-          0.0
+          37.03411594471952,
+          -0.017191499522938313
         ],
         [
-          63.019700273431596,
-          0.0
+          37.61030939313683,
+          -0.02291834218251786
         ],
         [
-          64.35467591139958,
-          0.0
+          38.186502841554145,
+          -0.027250056229184957
         ],
         [
-          65.68965154936757,
-          0.0
+          38.76269628997146,
+          -0.03052465974216062
         ],
         [
-          67.66870000169779,
-          0.0
+          39.33888973838877,
+          -0.0329981232565555
         ],
         [
-          69.647748454028,
-          0.0
+          40.470199282925094,
+          -0.0362143957825891
         ],
         [
-          71.62679690635822,
-          0.0
+          41.601508827461416,
+          -0.03808224987555881
         ],
         [
-          73.60427163292789,
-          0.0
+          42.73281837199774,
+          -0.03914643352697519
         ],
         [
-          75.58174635949756,
-          0.0
+          43.86412791653406,
+          -0.039727408587588615
         ],
         [
-          77.55922108606723,
-          0.0
+          45.065546566682556,
+          -0.0400597008366236
         ],
         [
-          83.74360774187622,
-          0.0
+          46.26696521683105,
+          -0.040209751447406884
         ],
         [
-          89.92799439768521,
-          0.0
+          47.46838386697955,
+          -0.04026635249620579
         ],
         [
-          91.47409106163745,
-          0.0
+          48.0644116487991,
+          -0.040276801948456425
         ],
         [
-          93.0201877255897,
-          0.0
+          48.66043943061865,
+          -0.04028007589262302
         ],
         [
-          94.56628438954193,
-          0.0
+          49.2564672124382,
+          -0.04027620593939363
         ],
         [
-          95.55174469780209,
-          0.0
+          49.85016027085198,
+          -0.04026695949802034
         ],
         [
-          96.53720500606225,
-          0.0
+          50.44385332926576,
+          -0.04025374553294395
         ],
         [
-          97.52266531432241,
-          0.0
+          51.037546387679534,
+          -0.04023757841054813
         ],
         [
-          98.50866761324593,
-          0.0
+          52.22602215013901,
+          -0.040199225780549255
         ],
         [
-          104.229915181177,
-          0.0
+          53.414497912598485,
+          -0.040155658020752556
         ],
         [
-          109.95116274910808,
-          0.0
+          54.60297367505796,
+          -0.0401095054008937
         ],
         [
-          115.67241031703915,
-          0.0
+          55.78628196962012,
+          -0.04006227450275259
         ],
         [
-          123.80427445904986,
-          0.0
+          56.96959026418228,
+          -0.04001435327647044
         ],
         [
-          131.93613860106058,
-          0.0
+          58.15289855874444,
+          -0.03996607783777118
         ],
         [
-          140.0680027430713,
-          0.0
+          59.80914674127502,
+          -0.03989829240308803
         ],
         [
-          148.19986688508203,
-          0.0
+          61.465394923805604,
+          -0.039830524196886506
         ],
         [
-          158.3904761904762,
-          0.0
+          63.12164310633619,
+          -0.0397629667084666
         ],
         [
-          158.5093989588007,
-          0.0
+          67.96806599954927,
+          -0.039566941633739916
         ],
         [
-          158.62832172712518,
-          0.0
+          69.17967172285253,
+          -0.03951826656265714
         ],
         [
-          159.8904761904762,
-          0.0
+          71.60288316945908,
+          -0.03942128317389158
         ],
         [
-          159.89288732694692,
-          0.0
+          74.02609461606562,
+          -0.039324914201896974
         ],
         [
-          159.89529846341765,
-          0.0
+          76.44930606267216,
+          -0.03922918031715138
         ],
         [
-          159.90012073635913,
-          0.0
+          82.05653011294073,
+          -0.039009954549285804
         ],
         [
-          159.9049430093006,
-          0.0
+          87.6637541632093,
+          -0.03879386966205176
         ],
         [
-          159.9097652822421,
-          0.0
+          93.27097821347787,
+          -0.03858084266900195
         ],
         [
-          159.93243780659526,
-          0.0
+          102.7701466845776,
+          -0.038226773468617886
         ],
         [
-          159.95511033094843,
-          0.0
+          112.26931515567732,
+          -0.037880956263183836
         ],
         [
-          159.9777828553016,
-          0.0
+          121.76848362677704,
+          -0.037543065780738356
         ],
         [
-          160.00045537965477,
-          0.0
+          131.26765209787678,
+          -0.037212782039160126
         ],
         [
-          160.0346633693688,
-          0.0
+          142.3439771582361,
+          -0.03683686988075579
         ],
         [
-          160.0688713590828,
-          0.0
+          153.42030221859542,
+          -0.03647041267123954
         ],
         [
-          160.10307934879683,
-          0.0
+          158.24761904761905,
+          -0.036313605836756656
         ],
         [
-          160.13728733851084,
-          0.0
+          158.36654057116988,
+          -0.036309757898040224
         ],
         [
-          160.17149532822486,
-          0.0
+          158.4854620947207,
+          -0.0363059114914099
         ],
         [
-          160.23106728260558,
-          0.0
+          159.74761904761905,
+          -0.036265160577264526
         ],
         [
-          160.2906392369863,
-          0.0
+          159.74948515317416,
+          -0.35820281577214097
         ],
         [
-          160.350211191367,
-          0.0
+          159.75135125872927,
+          -0.35384104363091984
         ],
         [
-          160.40978314574772,
-          0.0
+          159.75508346983946,
+          -0.3453126118446905
         ],
         [
-          160.46935510012844,
-          0.0
+          159.75881568094965,
+          -0.33711095295158744
         ],
         [
-          160.52892705450915,
-          0.0
+          159.76254789205984,
+          -0.32921939752762547
         ],
         [
-          160.6259323588013,
-          0.0
+          159.78008817979105,
+          -0.29585944093870664
         ],
         [
-          160.72293766309343,
-          0.0
+          159.79762846752226,
+          -0.2676631674593837
         ],
         [
-          160.81994296738557,
-          0.0
+          159.81516875525347,
+          -0.2436122786386152
         ],
         [
-          160.9169482716777,
-          0.0
+          159.83270904298467,
+          -0.22292498922013776
         ],
         [
-          161.01395357596985,
-          0.0
+          159.85917311481012,
+          -0.1967684389613772
         ],
         [
-          161.110958880262,
-          0.0
+          159.88563718663556,
+          -0.17537351858921746
         ],
         [
-          161.26736304673776,
-          0.0
+          159.912101258461,
+          -0.15764244608440509
         ],
         [
-          161.42376721321352,
-          0.0
+          159.93856533028645,
+          -0.14277173437048127
         ],
         [
-          161.5801713796893,
-          0.0
+          159.9650294021119,
+          -0.13017072542014071
         ],
         [
-          161.73657554616506,
-          0.0
+          160.01112136384918,
+          -0.11237574137503879
         ],
         [
-          161.89297971264082,
-          0.0
+          160.05721332558647,
+          -0.09850603716772642
         ],
         [
-          162.11653214894974,
-          0.0
+          160.10330528732376,
+          -0.08746269748629311
         ],
         [
-          162.34008458525867,
-          0.0
+          160.14939724906105,
+          -0.07851952507188065
         ],
         [
-          162.5636370215676,
-          0.0
+          160.19548921079834,
+          -0.07116805364834142
         ],
         [
-          162.7871894578765,
-          0.0
+          160.24158117253563,
+          -0.06504468809768477
         ],
         [
-          163.01074189418543,
-          0.0
+          160.3166327641328,
+          -0.05704778794024927
         ],
         [
-          163.3020518484637,
-          0.0
+          160.39168435572998,
+          -0.05083943799719945
         ],
         [
-          163.59336180274195,
-          0.0
+          160.46673594732715,
+          -0.04591208030763025
         ],
         [
-          163.88467175702021,
-          0.0
+          160.54178753892432,
+          -0.04192813526571791
         ],
         [
-          164.17598171129848,
-          0.0
+          160.6168391305215,
+          -0.03865495827070149
         ],
         [
-          164.4850936705858,
-          0.0
+          160.69189072211867,
+          -0.03592847019452371
         ],
         [
-          164.79420562987312,
-          0.0
+          160.81292628958846,
+          -0.03239518010858464
         ],
         [
-          165.10331758916044,
-          0.0
+          160.93396185705825,
+          -0.0296425837448132
         ],
         [
-          165.4129391221861,
-          0.0
+          161.05499742452804,
+          -0.027454414270341416
         ],
         [
-          165.72256065521174,
-          0.0
+          161.17603299199783,
+          -0.025685512585511133
         ],
         [
-          166.03218218823739,
-          0.0
+          161.29706855946762,
+          -0.024235951176134096
         ],
         [
-          166.34184757413777,
-          0.0
+          161.46985652170034,
+          -0.022584365056736024
         ],
         [
-          167.93141144685217,
-          0.0
+          161.64264448393305,
+          -0.021302380080189167
         ],
         [
-          169.52097531956656,
-          0.0
+          161.81543244616577,
+          -0.02029464263669913
         ],
         [
-          171.11053919228095,
-          0.0
+          161.9882204083985,
+          -0.019495372824369615
         ],
         [
-          175.76088994831585,
-          0.0
+          162.1610083706312,
+          -0.018857622432999932
         ],
         [
-          180.41124070435075,
-          0.0
+          162.38610275126362,
+          -0.018212749108771183
         ],
         [
-          185.06159146038564,
-          0.0
+          162.61119713189603,
+          -0.017726648681421212
         ],
         [
-          202.12571753179242,
-          0.0
+          162.83629151252845,
+          -0.017358503116857344
         ],
         [
-          219.1898436031992,
-          0.0
+          163.06138589316086,
+          -0.01707924561495665
         ],
         [
-          236.25396967460597,
-          0.0
+          163.3001953672972,
+          -0.0168544704994106
         ],
         [
-          261.9195710352043,
-          0.0
+          163.53900484143352,
+          -0.016686876787583186
         ],
         [
-          287.5851723958026,
-          0.0
+          163.77781431556986,
+          -0.01656160751660014
         ],
         [
-          298.2290954115797,
-          0.0
-        ]
-      ],
-      "title": "\u03913 (Rad/S\u00b2) x Time (S)",
-      "inputs": [
-        "Time (s)"
-      ],
-      "outputs": [
-        "\u03b13 (rad/s\u00b2)"
-      ],
-      "interpolation": "spline",
-      "extrapolation": "zero",
-      "signature": {
-        "module": "rocketpy.mathutils.function",
-        "name": "Function"
-      }
-    },
-    "R1": {
-      "source": [
+          164.01699558831393,
+          -0.016467600080285368
+        ],
         [
-          0.0,
-          0.0
+          164.256176861058,
+          -0.01639712599371848
         ],
         [
-          0.0014095582940420635,
-          0.0
+          164.49535813380209,
+          -0.016344261462095343
         ],
         [
-          0.002819116588084127,
-          0.0
+          164.73455176863084,
+          -0.01630457015772371
         ],
         [
-          0.005638233176168254,
-          0.0
+          165.96552936083825,
+          -0.016190095701639203
         ],
         [
-          0.008457349764252381,
-          0.0
+          167.19650695304566,
+          -0.0161666207273782
         ],
         [
-          0.011276466352336508,
-          0.0
+          168.42748454525307,
+          -0.016168972662509756
         ],
         [
-          0.03946763223317778,
-          0.0
+          172.0340398974043,
+          -0.01616619821147253
         ],
         [
-          0.04085528032083424,
-          0.0
+          175.64059524955556,
+          -0.016166148042356655
         ],
         [
-          0.042242928408490706,
-          0.0
+          179.2471506017068,
+          -0.016161649594851817
         ],
         [
-          0.045018224583803626,
-          0.0
+          196.48491242496618,
+          -0.016132583675541205
         ],
         [
-          0.047793520759116546,
-          0.0
+          213.72267424822556,
+          -0.016102138491500367
         ],
         [
-          0.05056881693442947,
-          0.0
+          230.96043607148493,
+          -0.016073042189227317
         ],
         [
-          0.051535065794346184,
-          0.0
+          256.216460721343,
+          -0.016031198559818733
         ],
         [
-          0.0525013146542629,
-          0.0
+          281.4724853712011,
+          -0.015991018391848594
         ],
         [
-          0.05443381237409633,
+          298.21839993404154,
+          -0.01596524480984162
+        ]
+      ],
+      "title": "R1 (N) x Time (S)",
+      "inputs": [
+        "Time (s)"
+      ],
+      "outputs": [
+        "R1 (N)"
+      ],
+      "interpolation": "spline",
+      "extrapolation": "zero",
+      "signature": {
+        "module": "rocketpy.mathutils.function",
+        "name": "Function",
+        "hash": 8532846655790
+      }
+    },
+    "R2": {
+      "source": [
+        [
+          0.0,
           0.0
         ],
         [
-          0.056366310093929756,
+          0.00140955829402094,
           0.0
         ],
         [
-          0.05829880781376318,
+          0.00281911658804188,
           0.0
         ],
         [
-          0.06066778422868188,
+          0.00563823317608376,
           0.0
         ],
         [
-          0.06303676064360057,
+          0.00845734976412564,
           0.0
         ],
         [
-          0.06540573705851926,
+          0.01127646635216752,
           0.0
         ],
         [
-          0.08909550120770625,
+          0.039467632232586314,
           0.0
         ],
         [
-          0.09280001741842829,
+          0.04085528032029989,
           0.0
         ],
         [
-          0.09574786203389758,
+          0.04224292840801347,
           0.0
         ],
         [
-          0.09869570664936687,
+          0.04501822458344063,
           0.0
         ],
         [
-          0.10099207719472714,
+          0.047793520758867794,
           0.0
         ],
         [
-          0.1032884477400874,
+          0.050568816934294956,
           0.0
         ],
         [
-          0.10558481828544766,
+          0.051535065794208836,
           0.0
         ],
         [
-          0.11017755937616817,
+          0.052501314654122715,
           0.0
         ],
         [
-          0.11477030046688869,
+          0.05443381237395048,
           0.0
         ],
         [
-          0.1193630415576092,
+          0.056366310093778245,
           0.0
         ],
         [
-          0.13127045763130013,
+          0.05829880781360601,
           0.0
         ],
         [
-          0.14317787370499105,
+          0.06066778422864502,
           0.0
         ],
         [
-          0.14995992644651876,
+          0.06303676064368403,
           0.0
         ],
         [
-          0.1542011028620784,
+          0.06540573705872305,
           0.0
         ],
         [
-          0.15844227927763802,
+          0.08909550120911316,
           0.0
         ],
         [
-          0.16268345569319764,
+          0.09280001741983737,
           0.0
         ],
         [
-          0.1711658085243169,
+          0.09574786203637055,
           0.0
         ],
         [
-          0.17964816135543615,
+          0.09869570665290373,
           0.0
         ],
         [
-          0.1881305141865554,
+          0.10099207719695144,
           0.0
         ],
         [
-          0.19446574773727407,
+          0.10328844774099916,
           0.0
         ],
         [
-          0.20080098128799273,
+          0.10558481828504687,
           0.0
         ],
         [
-          0.2056611859339936,
+          0.1101775593731423,
           0.0
         ],
         [
-          0.21052139057999447,
+          0.11477030046123773,
           0.0
         ],
         [
-          0.21538159522599534,
+          0.11936304154933317,
           0.0
         ],
         [
-          0.22510200451799706,
+          0.1312706469438581,
           0.0
         ],
         [
-          0.23482241380999877,
+          0.14317825233838302,
           0.0
         ],
         [
-          0.24454282310200048,
+          0.1499601229088181,
           0.0
         ],
         [
-          0.2542632323940022,
+          0.1542012180187087,
           0.0
         ],
         [
-          0.35146732531401936,
+          0.1584423131285993,
           0.0
         ],
         [
-          0.3632465986442917,
+          0.1626834082384899,
           0.0
         ],
         [
-          0.3693545968582991,
+          0.1711655984582711,
           0.0
         ],
         [
-          0.37546259507230645,
+          0.17964778867805228,
           0.0
         ],
         [
-          0.3876785915003212,
+          0.18812997889783348,
           0.0
         ],
         [
-          0.39989458792833593,
+          0.19446537171097383,
           0.0
         ],
         [
-          0.4121105843563507,
+          0.20080076452411422,
           0.0
         ],
         [
-          0.4714932108541475,
+          0.20566109450366143,
           0.0
         ],
         [
-          0.5078257800637102,
+          0.21052142448320865,
           0.0
         ],
         [
-          0.5343429255049618,
+          0.21538175446275587,
           0.0
         ],
         [
-          0.5608600709462134,
+          0.22510241442185028,
           0.0
         ],
         [
-          0.587377216387465,
+          0.23482307438094469,
           0.0
         ],
         [
-          0.6404115072699682,
+          0.2445437343400391,
           0.0
         ],
         [
-          0.6934457981524714,
+          0.2542643942991335,
           0.0
         ],
         [
-          0.7464800890349746,
+          0.3514709938900776,
           0.0
         ],
         [
-          0.7995143799174779,
+          0.36324670161934375,
           0.0
         ],
         [
-          0.8131556786423583,
-          0.0
+          0.3693547037882063,
+          -0.00565514562658116
         ],
         [
-          0.8267969773672387,
-          0.0
+          0.3754627059570688,
+          -0.01154308999547292
         ],
         [
-          0.8404382760921191,
-          0.0
+          0.3876787102947939,
+          -0.02402090553423015
         ],
         [
-          0.8773817713324279,
-          0.0
+          0.39989471463251897,
+          -0.037431057457613034
         ],
         [
-          0.9143252665727367,
-          0.0
+          0.41211071897024404,
+          -0.05177228876326393
         ],
         [
-          0.9512687618130455,
-          0.0
+          0.47147904178591876,
+          -0.13451715600935016
         ],
         [
-          0.9671044469204755,
-          0.0
+          0.5078212847273655,
+          -0.19557282460967737
         ],
         [
-          0.9987682629763311,
-          0.0
+          0.5343387025617514,
+          -0.2447590534507144
         ],
         [
-          1.0182059593067265,
-          0.0
+          0.5608561203961373,
+          -0.29749728624258753
         ],
         [
-          1.037643655637122,
-          0.0
+          0.5873735382305232,
+          -0.35340160904837786
         ],
         [
-          1.0570813519675175,
-          0.0
+          0.6404083738992948,
+          -0.4727487524758555
         ],
         [
-          1.0878522163238507,
-          0.0
+          0.6934432095680665,
+          -0.5976323631097056
         ],
         [
-          1.1186230806801838,
-          0.0
+          0.7464780452368381,
+          -0.7210717760121994
         ],
         [
-          1.1439344065815038,
-          0.0
+          0.7995128809056098,
+          -0.8340296254707387
         ],
         [
-          1.1692457324828238,
-          0.0
+          0.813164227469089,
+          -0.8600999693775174
         ],
         [
-          1.1945570583841438,
-          0.0
+          0.8268155740325682,
+          -0.8845471037682128
         ],
         [
-          1.2316667865519533,
-          0.0
+          0.8404669205960474,
+          -0.9071586800579403
         ],
         [
-          1.2687765147197627,
-          0.0
+          0.8775732859954444,
+          -0.9576266412367105
         ],
         [
-          1.3058862428875722,
-          0.0
+          0.9146796513948413,
+          -0.9884288698577709
         ],
         [
-          1.3429959710553816,
-          0.0
+          0.9517860167942382,
+          -0.9949830883209272
         ],
         [
-          1.4022433435144068,
-          0.0
+          0.9674325642455079,
+          -0.989339685971975
         ],
         [
-          1.447124093183637,
-          0.0
+          0.9990075872778321,
+          -0.9613966326353233
         ],
         [
-          1.4920048428528674,
-          0.0
+          1.0183793592598076,
+          -0.9322551044379322
         ],
         [
-          1.5261259080406766,
-          0.0
+          1.037751131241783,
+          -0.8934638676586302
         ],
         [
-          1.5602469732284858,
-          0.0
+          1.0571229032237586,
+          -0.8446794618035574
         ],
         [
-          1.594368038416295,
-          0.0
+          1.0878788324799102,
+          -0.7465332548608881
         ],
         [
-          1.6284891036041043,
-          0.0
+          1.118634761736062,
+          -0.6225668217927511
         ],
         [
-          1.6626101687919135,
-          0.0
+          1.1439443303803107,
+          -0.5013311119473252
         ],
         [
-          1.6967312339797227,
-          0.0
+          1.1692538990245596,
+          -0.36372293921753496
         ],
         [
-          1.730852299167532,
-          0.0
+          1.1945634676688084,
+          -0.21113949021150302
         ],
         [
-          1.770204581699234,
-          0.0
+          1.2316568052102488,
+          0.03639303397097231
         ],
         [
-          1.809556864230936,
-          0.0
+          1.2687501427516892,
+          0.30423555559569987
         ],
         [
-          1.8489091467626382,
-          0.0
+          1.3058434802931296,
+          0.5805376728855776
         ],
         [
-          1.8882614292943403,
-          0.0
+          1.34293681783457,
+          0.8513794379571019
         ],
         [
-          1.9276137118260424,
-          0.0
+          1.4021386812930872,
+          1.2338338291051065
         ],
         [
-          1.9669659943577444,
-          0.0
+          1.447031703480718,
+          1.445395025108331
         ],
         [
-          2.0063182768894463,
-          0.0
+          1.491924725668349,
+          1.5563903515848672
         ],
         [
-          2.0456705594211484,
-          0.0
+          1.5260726318617992,
+          1.5568029592813717
         ],
         [
-          2.0850228419528505,
-          0.0
+          1.5602205380552494,
+          1.4765420084824215
         ],
         [
-          2.1243751244845526,
-          0.0
+          1.5943684442486996,
+          1.3130603215300205
         ],
         [
-          2.1637274070162547,
-          0.0
+          1.6285163504421498,
+          1.069091620159849
         ],
         [
-          2.2030796895479567,
-          0.0
+          1.6626642566356,
+          0.7533522812784682
         ],
         [
-          2.242431972079659,
-          0.0
+          1.6968121628290502,
+          0.380864070337644
         ],
         [
-          2.281784254611361,
-          0.0
+          1.7309600690225004,
+          -0.027260464269547476
         ],
         [
-          2.321136537143063,
-          0.0
+          1.770308643380365,
+          -0.5073331099733411
         ],
         [
-          2.360488819674765,
-          0.0
+          1.8096572177382295,
+          -0.9531611291960618
         ],
         [
-          2.399841102206467,
-          0.0
+          1.849005792096094,
+          -1.3154211599476824
         ],
         [
-          2.4391933847381693,
-          0.0
+          1.8883543664539586,
+          -1.5489329638197962
         ],
         [
-          2.4785456672698714,
-          0.0
+          1.9277029408118231,
+          -1.619232016139929
         ],
         [
-          2.5178979498015734,
-          0.0
+          1.9670515151696877,
+          -1.5084029917572512
         ],
         [
-          2.5572502323332755,
-          0.0
+          2.006400089527552,
+          -1.2198083860667315
         ],
         [
-          2.5966025148649776,
-          0.0
+          2.0457486638854165,
+          -0.7807758903469753
         ],
         [
-          2.6359547973966797,
-          0.0
+          2.085097238243281,
+          -0.2421865326918564
         ],
         [
-          2.675307079928382,
-          0.0
+          2.124445812601145,
+          0.3259808123541018
         ],
         [
-          2.714659362460084,
-          0.0
+          2.1637943869590095,
+          0.843142551271614
         ],
         [
-          2.7466638251883717,
-          0.0
+          2.203142961316874,
+          1.229807022489893
         ],
         [
-          2.7786682879166595,
-          0.0
+          2.242491535674738,
+          1.4209417955930432
         ],
         [
-          2.8106727506449474,
-          0.0
+          2.2818401100326025,
+          1.3785567263212168
         ],
         [
-          2.842677213373235,
-          0.0
+          2.3211886843904668,
+          1.1018341938918286
         ],
         [
-          2.874681676101523,
-          0.0
+          2.360537258748331,
+          0.631614856814842
         ],
         [
-          2.9108918137851214,
-          0.0
+          2.3998858331061954,
+          0.047126738776006094
         ],
         [
-          2.9402847513530936,
-          0.0
+          2.4392344074640597,
+          -0.5455981700134476
         ],
         [
-          2.9637983886571173,
-          0.0
+          2.478582981821924,
+          -1.032908353141753
         ],
         [
-          2.987312025961141,
-          0.0
+          2.5179315561797884,
+          -1.3165113629962304
         ],
         [
-          2.9914721939592726,
-          0.0
+          2.5572801305376527,
+          -1.3357152319781609
         ],
         [
-          2.995632361957404,
-          0.0
+          2.596628704895517,
+          -1.0836562736273232
         ],
         [
-          2.9997925299555357,
-          0.0
+          2.6359772792533813,
+          -0.6130987626040243
         ],
         [
-          3.0010806713261253,
-          0.0
+          2.6753258536112456,
+          -0.02891974020361683
         ],
         [
-          3.002368812696715,
-          0.0
+          2.71467442796911,
+          0.5329493865828329
         ],
         [
-          3.0049450954378942,
-          0.0
+          2.746682540487563,
+          0.8762102877309008
         ],
         [
-          3.0075213781790735,
-          0.0
+          2.778690653006016,
+          1.0549333658194067
         ],
         [
-          3.031179520120233,
-          0.0
+          2.810698765524469,
+          1.039066229580256
         ],
         [
-          3.0548376620613924,
-          0.0
+          2.842706878042922,
+          0.8322857474459462
         ],
         [
-          3.078495804002552,
-          0.0
+          2.874714990561375,
+          0.47284858253458356
         ],
         [
-          3.1021539459437113,
-          0.0
+          2.9109277644238576,
+          -0.03359520532525932
         ],
         [
-          3.1205915242496687,
-          0.0
+          2.940339896156497,
+          -0.4397306884295524
         ],
         [
-          3.139029102555626,
-          0.0
+          2.9638563968017557,
+          -0.7104395928287145
         ],
         [
-          3.1574666808615834,
-          0.0
+          2.9873728974470146,
+          -0.9029887281812107
         ],
         [
-          3.1943418374734978,
-          0.0
+          2.991532758872659,
+          -0.9273081424965031
         ],
         [
-          3.223214302746968,
-          0.0
+          2.995692620298303,
+          -0.9485203271468192
         ],
         [
-          3.252086768020438,
-          0.0
+          2.999852481723947,
+          -0.9665771449807048
         ],
         [
-          3.2809592332939084,
-          0.0
+          3.0011406359017885,
+          -0.9713716195634571
         ],
         [
-          3.2861061530217075,
-          0.0
+          3.00242879007963,
+          -0.9758557643201715
         ],
         [
-          3.2912530727495066,
-          0.0
+          3.0050050984353125,
+          -0.9835829708910153
         ],
         [
-          3.2963999924773058,
-          0.0
+          3.007581406790995,
+          -0.9900586912694498
         ],
         [
-          3.3042992470019175,
-          0.0
+          3.0312400452524226,
+          -0.9984060339293075
         ],
         [
-          3.312198501526529,
-          0.0
+          3.05489868371385,
+          -0.9087765326266741
         ],
         [
-          3.320097756051141,
-          0.0
+          3.0785573221752776,
+          -0.7350232707042812
         ],
         [
-          3.329990894740742,
-          0.0
+          3.102215960636705,
+          -0.49919598353375194
         ],
         [
-          3.339884033430343,
-          0.0
+          3.120664542586555,
+          -0.2877025950614071
         ],
         [
-          3.349777172119944,
-          0.0
+          3.139113124536405,
+          -0.06906285603413143
         ],
         [
-          3.3683253555356067,
-          0.0
+          3.1575617064862547,
+          0.14173187752650965
         ],
         [
-          3.3868735389512694,
-          0.0
+          3.194458870385954,
+          0.4911785571320738
         ],
         [
-          3.4020443640890705,
-          0.0
+          3.2233916577517485,
+          0.6483001013349214
         ],
         [
-          3.4113407650123997,
-          0.0
+          3.252324445117543,
+          0.673810589380356
         ],
         [
-          3.420637165935729,
-          0.0
+          3.2812572324833376,
+          0.5688437159945601
         ],
         [
-          3.429933566859058,
-          0.0
+          3.2864042093564865,
+          0.5372062214862997
         ],
         [
-          3.446308281894537,
-          0.0
+          3.2915511862296354,
+          0.5023929468090117
         ],
         [
-          3.4626829969300164,
-          0.0
+          3.2966981631027843,
+          0.4646762039173042
         ],
         [
-          3.4790577119654955,
-          0.0
+          3.3044731976480057,
+          0.40290703109429876
         ],
         [
-          3.5098113349838638,
-          0.0
+          3.312248232193227,
+          0.3360988498519751
         ],
         [
-          3.534175816549051,
-          0.0
+          3.3200232667384486,
+          0.26518527375493717
         ],
         [
-          3.558540298114238,
-          0.0
+          3.3299608976332786,
+          0.1703280337564134
         ],
         [
-          3.582904779679425,
-          0.0
+          3.3398985285281086,
+          0.07253744392016458
         ],
         [
-          3.615075076269808,
-          0.0
+          3.3498361594229387,
+          -0.026103290798839725
         ],
         [
-          3.6472453728601906,
-          0.0
+          3.3684063767347974,
+          -0.2036704806115067
         ],
         [
-          3.6794156694505733,
-          0.0
+          3.386976594046656,
+          -0.36438180953477023
         ],
         [
-          3.711585966040956,
-          0.0
+          3.4020328166662903,
+          -0.4761939427841741
         ],
         [
-          3.7510748617223286,
-          0.0
+          3.4113057466050263,
+          -0.5346594948270492
         ],
         [
-          3.790563757403701,
-          0.0
+          3.4205786765437622,
+          -0.5837393639383273
         ],
         [
-          3.830052653085074,
-          0.0
+          3.429851606482498,
+          -0.6227139263732917
         ],
         [
-          3.862940498739986,
-          0.0
+          3.4462125806335115,
+          -0.665398915398214
         ],
         [
-          3.895828344394898,
-          0.0
+          3.462573554784525,
+          -0.674776453461082
         ],
         [
-          3.901564462162616,
-          0.0
+          3.4789345289355382,
+          -0.6519433101724073
         ],
         [
-          3.9073005799303346,
-          0.0
+          3.5099101021393686,
+          -0.5364737682040656
         ],
         [
-          3.913036697698053,
-          0.0
+          3.5343946919875657,
+          -0.3922121367927536
         ],
         [
-          3.924489906398398,
-          0.0
+          3.558879281835763,
+          -0.22183663731575737
         ],
         [
-          3.935943115098743,
-          0.0
+          3.58336387168396,
+          -0.04599758439852942
         ],
         [
-          3.947396323799088,
-          0.0
+          3.6154318916074843,
+          0.16589890708817615
         ],
         [
-          3.975516795322242,
-          0.0
+          3.6474999115310087,
+          0.31619773022029074
         ],
         [
-          4.003637266845396,
-          0.0
+          3.679567931454533,
+          0.374498485966583
         ],
         [
-          4.03175773836855,
-          0.0
+          3.7116359513780575,
+          0.3334557983207124
         ],
         [
-          4.071718134752553,
-          0.0
+          3.750677226849746,
+          0.16877868446151276
         ],
         [
-          4.111678531136556,
-          0.0
+          3.789718502321435,
+          -0.06707881741865569
         ],
         [
-          4.151638927520558,
-          0.0
+          3.8287597777931235,
+          -0.2920888464420288
         ],
         [
-          4.191599323904561,
-          0.0
+          3.867801053264812,
+          -0.434472047336306
         ],
         [
-          4.247720558129715,
-          0.0
+          3.906842328736501,
+          -0.45728125568751027
         ],
         [
-          4.293788946145795,
-          0.0
+          3.9127975041938576,
+          -0.4499989817039307
         ],
         [
-          4.3319865166419085,
-          0.0
+          3.9187526796512144,
+          -0.4402908687929623
         ],
         [
-          4.370184087138022,
-          0.0
+          3.9247078551085712,
+          -0.4282703747966884
         ],
         [
-          4.408381657634136,
-          0.0
+          3.9366182060232844,
+          -0.39800955050188697
         ],
         [
-          4.44657922813025,
-          0.0
+          3.9485285569379975,
+          -0.3603001545531403
         ],
         [
-          4.484776798626363,
-          0.0
+          3.9604389078527107,
+          -0.31642549254639546
         ],
         [
-          4.527459427885128,
-          0.0
+          3.9894733064604,
+          -0.19198916066097435
         ],
         [
-          4.570142057143892,
-          0.0
+          4.018507705068089,
+          -0.059858461285807615
         ],
         [
-          4.612824686402656,
-          0.0
+          4.047542103675778,
+          0.05840165912387109
         ],
         [
-          4.655507315661421,
-          0.0
+          4.0765765022834675,
+          0.14527218011766976
         ],
         [
-          4.698189944920185,
-          0.0
+          4.119155795005119,
+          0.19693133019367218
         ],
         [
-          4.752240597633832,
-          0.0
+          4.16173508772677,
+          0.15252731068413605
         ],
         [
-          4.806291250347479,
-          0.0
+          4.1691207712068685,
+          0.13510275907980318
         ],
         [
-          4.8603419030611255,
-          0.0
+          4.176506454686967,
+          0.11557659574352738
         ],
         [
-          4.914392555774772,
-          0.0
+          4.1838921381670655,
+          0.09424492552570363
         ],
         [
-          4.968443208488419,
-          0.0
+          4.1986635051272625,
+          0.04763481880986464
         ],
         [
-          5.022493861202066,
-          0.0
+          4.2134348720874595,
+          -0.002759685312400964
         ],
         [
-          5.076544513915713,
-          0.0
+          4.2282062390476565,
+          -0.0548143828640509
         ],
         [
-          5.13059516662936,
-          0.0
+          4.264323210631898,
+          -0.17750988288560407
         ],
         [
-          5.1846458193430065,
-          0.0
+          4.300440182216139,
+          -0.2726628291767621
         ],
         [
-          5.238696472056653,
-          0.0
+          4.33655715380038,
+          -0.3202814571870066
         ],
         [
-          5.2927471247703,
-          0.0
+          4.372674125384622,
+          -0.31324467375140996
         ],
         [
-          5.342460668455986,
-          0.0
+          4.416044435312633,
+          -0.2395924016636684
         ],
         [
-          5.392174212141671,
-          0.0
+          4.459414745240645,
+          -0.12210869890202129
         ],
         [
-          5.441887755827357,
-          0.0
+          4.502785055168657,
+          -0.004230305243494003
         ],
         [
-          5.491601299513042,
-          0.0
+          4.546155365096668,
+          0.07433474880068297
         ],
         [
-          5.554603109165186,
-          0.0
+          4.58952567502468,
+          0.09110766503769127
         ],
         [
-          5.617604918817331,
-          0.0
+          4.632895984952691,
+          0.04615117867053396
         ],
         [
-          5.6677507107483684,
-          0.0
+          4.676266294880703,
+          -0.04014788644145534
         ],
         [
-          5.717896502679406,
-          0.0
+          4.719636604808715,
+          -0.13627000680520263
         ],
         [
-          5.768042294610444,
-          0.0
+          4.768224902129621,
+          -0.21794415705852907
         ],
         [
-          5.818188086541482,
-          0.0
+          4.816813199450527,
+          -0.2447872493867989
         ],
         [
-          5.878315251829882,
-          0.0
+          4.865401496771433,
+          -0.21181326928944438
         ],
         [
-          5.928299499698518,
-          0.0
+          4.913989794092339,
+          -0.13710478205032373
         ],
         [
-          5.978283747567154,
-          0.0
+          4.962578091413246,
+          -0.05256558998417299
         ],
         [
-          6.02826799543579,
-          0.0
+          5.016300880486902,
+          0.013734861034799015
         ],
         [
-          6.078252243304426,
-          0.0
+          5.070023669560559,
+          0.024325612953043724
         ],
         [
-          6.14293081584079,
-          0.0
+          5.123746458634216,
+          -0.02596841881996924
         ],
         [
-          6.196765840796611,
-          0.0
+          5.177469247707872,
+          -0.10675652739224153
         ],
         [
-          6.250600865752432,
-          0.0
+          5.219601255563254,
+          -0.17925283725471827
         ],
         [
-          6.304435890708253,
-          0.0
+          5.261733263418636,
+          -0.2387860503750709
         ],
         [
-          6.3582709156640735,
-          0.0
+          5.3038652712740175,
+          -0.2655041410611912
         ],
         [
-          6.433461438883678,
-          0.0
+          5.345997279129399,
+          -0.24916065998416465
         ],
         [
-          6.493499513622796,
-          0.0
+          5.388129286984781,
+          -0.193656805034285
         ],
         [
-          6.553537588361913,
-          0.0
+          5.438594166103664,
+          -0.1003231692446882
         ],
         [
-          6.613575663101031,
-          0.0
+          5.489059045222548,
+          -0.015324308623062907
         ],
         [
-          6.6736137378401486,
-          0.0
+          5.539523924341431,
+          0.027984640981753274
         ],
         [
-          6.752474107792829,
-          0.0
+          5.589988803460314,
+          0.017382771336579207
         ],
         [
-          6.813959694855546,
-          0.0
+          5.6404536825791975,
+          -0.03501466651114958
         ],
         [
-          6.875445281918263,
-          0.0
+          5.690918561698081,
+          -0.10259482578982898
         ],
         [
-          6.93693086898098,
-          0.0
+          5.741383440816964,
+          -0.15881516574331528
         ],
         [
-          6.998416456043697,
-          0.0
+          5.7918483199358475,
+          -0.18720422707157264
         ],
         [
-          7.079711027784927,
-          0.0
+          5.842313199054731,
+          -0.18379486381424115
         ],
         [
-          7.1413765714336215,
-          0.0
+          5.900175444574162,
+          -0.14813042709928162
         ],
         [
-          7.203042115082316,
-          0.0
+          5.958037690093594,
+          -0.09735352260527544
         ],
         [
-          7.264707658731011,
-          0.0
+          6.015899935613025,
+          -0.05372255235706819
         ],
         [
-          7.326373202379705,
-          0.0
+          6.073762181132457,
+          -0.03387649163151344
         ],
         [
-          7.4088916340702395,
-          0.0
+          6.1316244266518884,
+          -0.043319564146009626
         ],
         [
-          7.471438984396619,
-          0.0
+          6.18948667217132,
+          -0.0754542485257399
         ],
         [
-          7.533986334722999,
-          0.0
+          6.2473489176907515,
+          -0.11530570394022324
         ],
         [
-          7.596533685049379,
-          0.0
+          6.305211163210183,
+          -0.1462438881349384
         ],
         [
-          7.659081035375759,
-          0.0
+          6.374869724777001,
+          -0.1581677047821176
         ],
         [
-          7.748666795076123,
-          0.0
+          6.44452828634382,
+          -0.13983801960936465
         ],
         [
-          7.759103537845691,
-          0.0
+          6.514186847910638,
+          -0.10282808661303355
         ],
         [
-          7.769540280615259,
-          0.0
+          6.583845409477457,
+          -0.06615918125589704
         ],
         [
-          7.779977023384827,
-          0.0
+          6.653503971044275,
+          -0.046933809072786034
         ],
         [
-          7.800850508923962,
-          0.0
+          6.723162532611093,
+          -0.053136168803730635
         ],
         [
-          7.821723994463097,
-          0.0
+          6.792821094177912,
+          -0.08099867047822684
         ],
         [
-          7.842597480002232,
-          0.0
+          6.856149583247434,
+          -0.11210888786013079
         ],
         [
-          7.900172892552435,
-          0.0
+          6.919478072316956,
+          -0.13700512705195828
         ],
         [
-          7.957748305102638,
-          0.0
+          6.982806561386478,
+          -0.1488533404181674
         ],
         [
-          8.01532371765284,
-          0.0
+          7.046135050456,
+          -0.14592390615492662
         ],
         [
-          8.072899130203044,
-          0.0
+          7.109463539525522,
+          -0.13122096125339744
         ],
         [
-          8.14886572486838,
-          0.0
+          7.172792028595044,
+          -0.11079091360429298
         ],
         [
-          8.224832319533714,
-          0.0
+          7.236120517664566,
+          -0.09146521942532844
         ],
         [
-          8.30079891419905,
-          0.0
+          7.299449006734088,
+          -0.07876612277633746
         ],
         [
-          8.376765508864384,
-          0.0
+          7.36277749580361,
+          -0.07553515477774256
         ],
         [
-          8.45273210352972,
-          0.0
+          7.441907419493829,
+          -0.08435391457671995
         ],
         [
-          8.5564809550127,
-          0.0
+          7.521037343184047,
+          -0.10056715083216942
         ],
         [
-          8.632458997358304,
-          0.0
+          7.600167266874266,
+          -0.1162791768224896
         ],
         [
-          8.708437039703908,
-          0.0
+          7.696303025687341,
+          -0.1285213356827468
         ],
         [
-          8.784415082049511,
-          0.0
+          7.7924387845004155,
+          -0.12733180808665295
         ],
         [
-          8.860393124395115,
-          0.0
+          7.88857454331349,
+          -0.115017093853314
         ],
         [
-          8.936371166740718,
-          0.0
+          7.984710302126565,
+          -0.10043958601371997
         ],
         [
-          9.012349209086322,
-          0.0
+          8.08084606093964,
+          -0.09267159439458884
         ],
         [
-          9.088327251431926,
-          0.0
+          8.176981819752715,
+          -0.09586248257279403
         ],
         [
-          9.16430529377753,
-          0.0
+          8.27311757856579,
+          -0.10761318240176186
         ],
         [
-          9.255988954542772,
-          0.0
+          8.374791072592975,
+          -0.12046234635698244
         ],
         [
-          9.329184490076974,
-          0.0
+          8.47646456662016,
+          -0.12770931525079304
         ],
         [
-          9.402380025611176,
-          0.0
+          8.578138060647346,
+          -0.12626972736800426
         ],
         [
-          9.475575561145378,
-          0.0
+          8.679811554674531,
+          -0.11770861560646752
         ],
         [
-          9.54877109667958,
-          0.0
+          8.781485048701716,
+          -0.10699557712629393
         ],
         [
-          9.621966632213782,
-          0.0
+          8.883158542728902,
+          -0.0999408548728592
         ],
         [
-          9.69992497595067,
-          0.0
+          9.00524652036951,
+          -0.10053485531988567
         ],
         [
-          9.77788331968756,
-          0.0
+          9.12733449801012,
+          -0.11402397454367985
         ],
         [
-          9.855841663424448,
-          0.0
+          9.249422475650729,
+          -0.13439261262713553
         ],
         [
-          9.933800007161336,
-          0.0
+          9.371510453291338,
+          -0.14824895764716953
         ],
         [
-          10.011758350898225,
-          0.0
+          9.493598430931947,
+          -0.14333185562177153
         ],
         [
-          10.089716694635113,
-          0.0
+          9.615686408572556,
+          -0.11811312452646527
         ],
         [
-          10.167675038372002,
-          0.0
+          9.638495054883064,
+          -0.11130849173727231
         ],
         [
-          10.260259956542143,
-          0.0
+          9.661303701193573,
+          -0.10475682466152264
         ],
         [
-          10.331983881553601,
-          0.0
+          9.684112347504081,
+          -0.09885183895739398
         ],
         [
-          10.403707806565059,
-          0.0
+          9.729729640125099,
+          -0.08998519837424651
         ],
         [
-          10.475431731576517,
-          0.0
+          9.775346932746116,
+          -0.0853819573452839
         ],
         [
-          10.570210949134573,
-          0.0
+          9.820964225367133,
+          -0.0852438525358829
         ],
         [
-          10.664990166692629,
-          0.0
+          9.921906879777866,
+          -0.09706209864397902
         ],
         [
-          10.759769384250685,
-          0.0
+          10.004312108890508,
+          -0.11458323547078136
         ],
         [
-          10.854548601808741,
-          0.0
+          10.08671733800315,
+          -0.13330353211883056
         ],
         [
-          10.949327819366797,
-          0.0
+          10.16912256711579,
+          -0.14817392461716536
         ],
         [
-          11.044107036924853,
-          0.0
+          10.318508402311611,
+          -0.15697743569084713
         ],
         [
-          11.138886254482909,
-          0.0
+          10.416310959001898,
+          -0.14715199578800228
         ],
         [
-          11.223078569708694,
-          0.0
+          10.514113515692184,
+          -0.1297073390274548
         ],
         [
-          11.307270884934479,
-          0.0
+          10.61191607238247,
+          -0.11209244229107086
         ],
         [
-          11.391463200160263,
-          0.0
+          10.709718629072757,
+          -0.10213067737370798
         ],
         [
-          11.526298565803183,
-          0.0
+          10.84073505366698,
+          -0.1069780693682282
         ],
         [
-          11.629928166907957,
-          0.0
+          10.935791309767657,
+          -0.1228224422588845
         ],
         [
-          11.733557768012732,
-          0.0
+          11.030847565868333,
+          -0.14254850009050718
         ],
         [
-          11.837187369117506,
-          0.0
+          11.12590382196901,
+          -0.15934498882538972
         ],
         [
-          11.940816970222281,
-          0.0
+          11.220960078069686,
+          -0.16737557539226341
         ],
         [
-          12.064752353445058,
-          0.0
+          11.34293278943959,
+          -0.16217407140795467
         ],
         [
-          12.188687736667836,
-          0.0
+          11.4367198655186,
+          -0.14827931565306385
         ],
         [
-          12.312623119890613,
-          0.0
+          11.530506941597611,
+          -0.1318229899880631
         ],
         [
-          12.43655850311339,
-          0.0
+          11.624294017676622,
+          -0.11878947546092271
         ],
         [
-          12.560493886336168,
-          0.0
+          11.718081093755632,
+          -0.11377056842697461
         ],
         [
-          12.684429269558946,
-          0.0
+          11.830682395509069,
+          -0.12010331252599261
         ],
         [
-          12.808364652781723,
-          0.0
+          11.943283697262505,
+          -0.13685353677768267
         ],
         [
-          12.831782867710663,
-          0.0
+          12.055884999015941,
+          -0.15679713345734378
         ],
         [
-          12.855201082639603,
-          0.0
+          12.168486300769377,
+          -0.17197170389459152
         ],
         [
-          12.878619297568543,
-          0.0
+          12.29994439393496,
+          -0.1768552484894786
         ],
         [
-          12.925455727426423,
-          0.0
+          12.404633593778348,
+          -0.1700252768429657
         ],
         [
-          12.972292157284302,
-          0.0
+          12.509322793621736,
+          -0.15716107050394426
         ],
         [
-          13.019128587142182,
-          0.0
+          12.614011993465125,
+          -0.14338806208615396
         ],
         [
-          13.153906925069139,
-          0.0
+          12.718701193308513,
+          -0.13395060966026795
         ],
         [
-          13.288685262996095,
-          0.0
+          12.865684810686352,
+          -0.13367971786838503
         ],
         [
-          13.423463600923052,
-          0.0
+          12.973565119592086,
+          -0.14361247871779076
         ],
         [
-          13.558241938850008,
-          0.0
+          13.08144542849782,
+          -0.15862198648700349
         ],
         [
-          13.693020276776965,
-          0.0
+          13.189325737403555,
+          -0.17418338233193462
         ],
         [
-          13.827798614703921,
-          0.0
+          13.29720604630929,
+          -0.18579758102030994
         ],
         [
-          13.962576952630878,
-          0.0
+          13.455915925693203,
+          -0.19116165974228322
         ],
         [
-          14.097355290557834,
-          0.0
+          13.572668910835402,
+          -0.18550751940776986
         ],
         [
-          14.23213362848479,
-          0.0
+          13.6894218959776,
+          -0.17500279453697784
         ],
         [
-          14.366911966411747,
-          0.0
+          13.8061748811198,
+          -0.16408211068002643
         ],
         [
-          14.54025856584105,
-          0.0
+          13.922927866261999,
+          -0.15720372963307394
         ],
         [
-          14.682392980564643,
-          0.0
+          14.085961813353116,
+          -0.15882810320294075
         ],
         [
-          14.824527395288236,
-          0.0
+          14.204687031875425,
+          -0.1686294427386289
         ],
         [
-          14.966661810011828,
-          0.0
+          14.323412250397734,
+          -0.182687223824795
         ],
         [
-          15.108796224735421,
-          0.0
+          14.442137468920043,
+          -0.19725426930421588
         ],
         [
-          15.286616031474669,
-          0.0
+          14.560862687442352,
+          -0.2085984342037171
         ],
         [
-          15.464435838213916,
-          0.0
+          14.727812813776477,
+          -0.2151135139307072
         ],
         [
-          15.642255644953163,
-          0.0
+          14.852763845864722,
+          -0.21229705891367018
         ],
         [
-          15.82007545169241,
-          0.0
+          14.977714877952966,
+          -0.20536714636607173
         ],
         [
-          15.997895258431658,
-          0.0
+          15.10266591004121,
+          -0.19763605865456924
         ],
         [
-          16.175715065170905,
-          0.0
+          15.227616942129455,
+          -0.19251449774384502
         ],
         [
-          16.353534871910153,
-          0.0
+          15.39474055277627,
+          -0.1934817717086811
         ],
         [
-          16.5313546786494,
-          0.0
+          15.526750000917001,
+          -0.20136963962588916
         ],
         [
-          16.709174485388647,
-          0.0
+          15.658759449057733,
+          -0.2138450291785921
         ],
         [
-          16.886994292127895,
-          0.0
+          15.790768897198465,
+          -0.22816077244324903
         ],
         [
-          17.0827216691956,
-          0.0
+          15.922778345339196,
+          -0.24126594191537093
         ],
         [
-          17.245756216665097,
-          0.0
+          16.079671368014623,
+          -0.25213786861980864
         ],
         [
-          17.408790764134594,
-          0.0
+          16.23656439069005,
+          -0.25676471327055583
         ],
         [
-          17.57182531160409,
-          0.0
+          16.393457413365475,
+          -0.2563174769883576
         ],
         [
-          17.734859859073588,
-          0.0
+          16.5503504360409,
+          -0.25359929437958917
         ],
         [
-          17.87633414755382,
-          0.0
+          16.72307251287968,
+          -0.2517258686258136
         ],
         [
-          17.989632326456782,
-          0.0
+          16.895794589718456,
+          -0.25450745988668305
         ],
         [
-          18.102930505359744,
-          0.0
+          17.068516666557233,
+          -0.26363908206489145
         ],
         [
-          18.216228684262706,
-          0.0
+          17.24123874339601,
+          -0.2780729311313871
         ],
         [
-          18.392123725075212,
-          0.0
+          17.413960820234788,
+          -0.29488163038378024
         ],
         [
-          18.568018765887718,
-          0.0
+          17.60482627556807,
+          -0.3125842373454556
         ],
         [
-          18.743913806700224,
-          0.0
+          17.79569173090135,
+          -0.32676827881236686
         ],
         [
-          18.91980884751273,
-          0.0
+          17.98655718623463,
+          -0.3371115934391615
         ],
         [
-          19.13456671816614,
-          0.0
+          18.17742264156791,
+          -0.3452709743239654
         ],
         [
-          19.349324588819552,
-          0.0
+          18.368288096901193,
+          -0.35376853912730694
         ],
         [
-          19.564082459472964,
-          0.0
+          18.559153552234473,
+          -0.3648097233497018
         ],
         [
-          19.778840330126375,
-          0.0
+          18.750019007567754,
+          -0.37952182180741406
         ],
         [
-          19.993598200779786,
-          0.0
+          18.940884462901035,
+          -0.39785034142677
         ],
         [
-          20.208356071433197,
-          0.0
+          19.160009857916293,
+          -0.4222785507714456
         ],
         [
-          20.42311394208661,
-          0.0
+          19.37913525293155,
+          -0.4488798997953972
         ],
         [
-          20.63787181274002,
-          0.0
+          19.59826064794681,
+          -0.4765635079100599
         ],
         [
-          20.89524769419444,
-          0.0
+          19.817386042962067,
+          -0.5049962285709031
         ],
         [
-          21.152623575648857,
-          0.0
+          20.036511437977325,
+          -0.5345525464078049
         ],
         [
-          21.409999457103275,
-          0.0
+          20.343119545325326,
+          -0.579205488302226
         ],
         [
-          21.667375338557694,
-          0.0
+          20.649727652673327,
+          -0.6298019002376111
         ],
         [
-          21.924751220012112,
-          0.0
+          20.95633576002133,
+          -0.6882501126952957
         ],
         [
-          22.18212710146653,
-          0.0
+          21.26294386736933,
+          -0.7557733709206215
         ],
         [
-          22.469164792221026,
-          0.0
+          21.56955197471733,
+          -0.8330700584859718
         ],
         [
-          22.75620248297552,
-          0.0
+          21.876160082065333,
+          -0.920654809122505
         ],
         [
-          23.043240173730016,
-          0.0
+          22.182768189413334,
+          -1.019135324593
         ],
         [
-          23.33027786448451,
-          0.0
+          22.489376296761336,
+          -1.1293045067525962
         ],
         [
-          23.617315555239006,
-          0.0
+          22.837549744359293,
+          -1.2697280170672203
         ],
         [
-          23.9043532459935,
-          0.0
+          23.18572319195725,
+          -1.42764230293861
         ],
         [
-          24.191390936747997,
-          0.0
+          23.53389663955521,
+          -1.6040082592875882
         ],
         [
-          24.419341542299552,
-          0.0
+          23.882070087153167,
+          -1.799553090605037
         ],
         [
-          24.647292147851108,
-          0.0
+          24.230243534751125,
+          -2.015212470456378
         ],
         [
-          24.875242753402663,
-          0.0
+          24.578416982349083,
+          -2.252889896104934
         ],
         [
-          25.10319335895422,
-          0.0
+          24.92659042994704,
+          -2.516099134073854
         ],
         [
-          25.331143964505774,
-          0.0
+          25.274763877545,
+          -2.809131896253288
         ],
         [
-          25.51872139829633,
-          0.0
+          25.544320922023445,
+          -3.0568894169418286
         ],
         [
-          25.706298832086883,
-          0.0
+          25.81387796650189,
+          -3.3166589840973772
         ],
         [
-          25.884966627110675,
-          0.0
+          25.885098654500275,
+          -3.3854176428382607
         ],
         [
           25.88571428571429,
-          0.0
+          -3.3860091876500107
         ],
         [
-          25.891724887187262,
-          0.0
+          25.891725275535915,
+          -3.3917499934120148
         ],
         [
-          25.897735488660235,
-          0.0
+          25.89773626535754,
+          -3.3974844915843447
         ],
         [
-          25.909756691606184,
-          0.0
+          25.90975824500079,
+          -3.408994289604223
         ],
         [
-          25.921777894552132,
-          0.0
+          25.921780224644042,
+          -3.420474905782324
         ],
         [
-          25.93379909749808,
-          0.0
+          25.933802204287293,
+          -3.431923390867375
         ],
         [
-          26.05401112695755,
-          0.0
+          26.05402200071982,
+          -3.543936429439074
         ],
         [
-          26.17422315641702,
-          0.0
+          26.174241797152344,
+          -3.648818810389293
         ],
         [
-          26.29443518587649,
-          0.0
+          26.29446159358487,
+          -3.7420418371468416
         ],
         [
-          26.41464721533596,
-          0.0
+          26.414681390017396,
+          -3.8180034353143846
         ],
         [
-          26.590536971802308,
-          0.0
+          26.59056092778596,
+          -3.8837500323708865
         ],
         [
-          26.766426728268655,
-          0.0
+          26.76644046555452,
+          -3.8725093067389067
         ],
         [
-          26.942316484735002,
-          0.0
+          26.942320003323083,
+          -3.754174631818799
         ],
         [
-          27.11820624120135,
-          0.0
+          27.118199541091645,
+          -3.495007066211546
         ],
         [
-          27.294095997667696,
-          0.0
+          27.294079078860207,
+          -3.0595978419503522
         ],
         [
           27.38571428571429,
-          0.0
+          -2.751376275406731
         ],
         [
-          27.403707346930535,
-          -0.0
+          27.397496400123647,
+          -193.95526951009586
         ],
         [
-          27.42170040814678,
-          -0.0
+          27.409278514533003,
+          -191.85542941598823
         ],
         [
-          27.457686530579274,
-          -0.0
+          27.43284274335172,
+          -187.74435408998272
         ],
         [
-          27.493672653011767,
-          -0.0
+          27.456406972170438,
+          -183.7795201474383
         ],
         [
-          27.52965877544426,
-          -0.0
+          27.479971200989155,
+          -179.9540432212677
         ],
         [
-          27.722358182653522,
-          -0.0
+          27.597382226258187,
+          -162.7639692103864
         ],
         [
-          27.915057589862784,
-          -0.0
+          27.71479325152722,
+          -148.20045411450926
         ],
         [
-          28.107756997072045,
-          -0.0
+          27.83220427679625,
+          -135.74529559339706
         ],
         [
-          28.300456404281306,
-          -0.0
+          27.949615302065283,
+          -124.99605227928508
         ],
         [
-          28.59167900359794,
-          -0.0
+          28.127223521019754,
+          -111.2928821191695
         ],
         [
-          28.882901602914572,
-          -0.0
+          28.304831739974226,
+          -99.97161412394782
         ],
         [
-          29.174124202231205,
-          -0.0
+          28.482439958928698,
+          -90.45095257955371
         ],
         [
-          29.465346801547838,
-          -0.0
+          28.66004817788317,
+          -82.30799482275981
         ],
         [
-          29.75656940086447,
-          -0.0
+          28.83765639683764,
+          -75.23638888024405
         ],
         [
-          30.25579246872472,
-          -0.0
+          29.142165265211645,
+          -64.98690875364463
         ],
         [
-          30.75501553658497,
-          -0.0
+          29.44667413358565,
+          -56.483323765793834
         ],
         [
-          31.25423860444522,
-          -0.0
+          29.751183001959653,
+          -49.25219918277339
         ],
         [
-          31.75346167230547,
-          -0.0
+          30.055691870333657,
+          -43.0073144153121
         ],
         [
-          32.25268474016572,
-          -0.0
+          30.36020073870766,
+          -37.56290158699892
         ],
         [
-          32.75190780802597,
-          -0.0
+          30.664709607081665,
+          -32.791981865335
         ],
         [
-          33.48826295234864,
-          -0.0
+          31.156066194366023,
+          -26.289613981931435
         ],
         [
-          34.224618096671314,
-          -0.0
+          31.64742278165038,
+          -21.020748453272862
         ],
         [
-          34.96097324099399,
-          -0.0
+          32.138779368934735,
+          -16.766602956312777
         ],
         [
-          35.69732838531666,
-          -0.0
+          32.63013595621909,
+          -13.345794400924555
         ],
         [
-          36.43368352963933,
-          -0.0
+          33.12149254350345,
+          -10.605371570362514
         ],
         [
-          37.18331742700439,
-          -0.0
+          33.61284913078781,
+          -8.41704956249788
         ],
         [
-          37.93295132436945,
-          -0.0
+          34.104205718072166,
+          -6.6739301110624565
         ],
         [
-          38.682585221734506,
-          -0.0
+          34.59556230535652,
+          -5.288023762779546
         ],
         [
-          39.432219119099564,
-          -0.0
+          35.20520071519727,
+          -3.959452250009447
         ],
         [
-          40.18185301646462,
-          -0.0
+          35.81483912503802,
+          -2.9632152716442484
         ],
         [
-          41.55565606299418,
-          -0.0
+          36.42447753487877,
+          -2.2164059205601903
         ],
         [
-          42.92945910952374,
-          -0.0
+          37.03411594471952,
+          -1.6572023029982679
         ],
         [
-          44.3032621560533,
-          -0.0
+          37.61030939313683,
+          -1.2586330208925893
         ],
         [
-          45.67706520258286,
-          -0.0
+          38.186502841554145,
+          -0.9557478033244909
         ],
         [
-          47.05086824911242,
-          -0.0
+          38.76269628997146,
+          -0.725606240156381
         ],
         [
-          48.62323521534373,
-          -0.0
+          39.33888973838877,
+          -0.5507748163947201
         ],
         [
-          50.19560218157505,
-          -0.0
+          40.470199282925094,
+          -0.321213662096329
         ],
         [
-          51.76796914780636,
-          -0.0
+          41.601508827461416,
+          -0.18572119561829956
         ],
         [
-          53.340336114037676,
-          -0.0
+          42.73281837199774,
+          -0.10655208170517803
         ],
         [
-          54.91270308026899,
-          -0.0
+          43.86412791653406,
+          -0.06137288850657868
         ],
         [
-          55.86204148248446,
-          -0.0
+          45.065546566682556,
+          -0.033627992532556196
         ],
         [
-          56.811379884699925,
-          -0.0
+          46.26696521683105,
+          -0.018930440961801277
         ],
         [
-          57.76071828691539,
-          -0.0
+          47.46838386697955,
+          -0.011000640340980049
         ],
         [
-          58.71005668913086,
-          -0.0
+          48.0644116487991,
+          -0.008365593543251624
         ],
         [
-          59.701612671241776,
-          -0.0
+          48.66043943061865,
+          -0.006261932957282988
         ],
         [
-          60.69316865335269,
-          -0.0
+          49.2564672124382,
+          -0.004682439154413856
         ],
         [
-          61.68472463546361,
-          -0.0
+          49.85016027085198,
+          -0.0035068583636222927
         ],
         [
-          63.019700273431596,
-          -0.0
+          50.44385332926576,
+          -0.002625731569110938
         ],
         [
-          64.35467591139958,
-          -0.0
+          51.037546387679534,
+          -0.001965165459642379
         ],
         [
-          65.68965154936757,
-          -0.0
+          52.22602215013901,
+          -0.0010946518769790693
         ],
         [
-          67.66870000169779,
-          -0.0
+          53.414497912598485,
+          -0.0006236519448596247
         ],
         [
-          69.647748454028,
-          -0.0
+          54.60297367505796,
+          -0.00035890032757907774
         ],
         [
-          71.62679690635822,
-          -0.0
+          55.78628196962012,
+          -0.00020430391335237328
         ],
         [
-          73.60427163292789,
-          -0.0
+          56.96959026418228,
+          -0.00011399719715482008
         ],
         [
-          75.58174635949756,
-          -0.0
+          58.15289855874444,
+          -6.235759395904922e-05
         ],
         [
-          77.55922108606723,
-          -0.0
+          59.80914674127502,
+          -2.622515660511664e-05
         ],
         [
-          83.74360774187622,
-          -0.0
+          61.465394923805604,
+          -1.1831364006603782e-05
         ],
         [
-          89.92799439768521,
-          -0.0
+          63.12164310633619,
+          -4.255617112615016e-06
         ],
         [
-          91.47409106163745,
-          -0.0
+          67.96806599954927,
+          1.96951383375867e-06
         ],
         [
-          93.0201877255897,
-          -0.0
+          69.17967172285253,
+          2.155012541840822e-06
         ],
         [
-          94.56628438954193,
-          -0.0
+          71.60288316945908,
+          3.4457173037246385e-06
         ],
         [
-          95.55174469780209,
-          -0.0
+          74.02609461606562,
+          4.946415505985135e-06
         ],
         [
-          96.53720500606225,
-          -0.0
+          76.44930606267216,
+          5.8084705465495965e-06
         ],
         [
-          97.52266531432241,
-          -0.0
+          82.05653011294073,
+          6.405740510925116e-06
         ],
         [
-          98.50866761324593,
-          -0.0
+          87.6637541632093,
+          6.2976533853509085e-06
         ],
         [
-          104.229915181177,
-          -0.0
+          93.27097821347787,
+          6.127553249777161e-06
         ],
         [
-          109.95116274910808,
-          -0.0
+          102.7701466845776,
+          5.86192208107982e-06
         ],
         [
-          115.67241031703915,
-          -0.0
+          112.26931515567732,
+          5.784799686442085e-06
         ],
         [
-          123.80427445904986,
-          -0.0
+          121.76848362677704,
+          5.737108176258259e-06
         ],
         [
-          131.93613860106058,
-          -0.0
+          131.26765209787678,
+          5.660442862889043e-06
         ],
         [
-          140.0680027430713,
-          -0.0
+          142.3439771582361,
+          5.558636323859422e-06
         ],
         [
-          148.19986688508203,
-          -0.0
+          153.42030221859542,
+          5.433478679676385e-06
         ],
         [
-          158.3904761904762,
-          -0.0
+          158.24761904761905,
+          5.383058289356943e-06
         ],
         [
-          158.5093989588007,
-          -0.0
+          158.36654057116988,
+          5.381998593377785e-06
         ],
         [
-          158.62832172712518,
-          -0.0
+          158.4854620947207,
+          5.3809343485869905e-06
         ],
         [
-          159.8904761904762,
-          -0.0
+          159.74761904761905,
+          5.369444200418739e-06
         ],
         [
-          159.89288732694692,
-          -0.0
+          159.74948515317416,
+          5.3035684522482896e-05
         ],
         [
-          159.89529846341765,
-          -0.0
+          159.75135125872927,
+          5.238982739560894e-05
         ],
         [
-          159.90012073635913,
-          -0.0
+          159.75508346983946,
+          5.112703325530669e-05
         ],
         [
-          159.9049430093006,
-          -0.0
+          159.75881568094965,
+          4.991267973046576e-05
         ],
         [
-          159.9097652822421,
-          -0.0
+          159.76254789205984,
+          4.874429267188465e-05
         ],
         [
-          159.93243780659526,
-          -0.0
+          159.78008817979105,
+          4.3805746171151286e-05
         ],
         [
-          159.95511033094843,
-          -0.0
+          159.79762846752226,
+          3.9632323238684967e-05
         ],
         [
-          159.9777828553016,
-          -0.0
+          159.81516875525347,
+          3.607294896755213e-05
         ],
         [
-          160.00045537965477,
-          -0.0
+          159.83270904298467,
+          3.301166437599724e-05
         ],
         [
-          160.0346633693688,
-          -0.0
+          159.85917311481012,
+          2.914129410699783e-05
         ],
         [
-          160.0688713590828,
-          -0.0
+          159.88563718663556,
+          2.5975496434811388e-05
         ],
         [
-          160.10307934879683,
-          -0.0
+          159.912101258461,
+          2.3351579228461633e-05
         ],
         [
-          160.13728733851084,
-          -0.0
+          159.93856533028645,
+          2.115050008654114e-05
         ],
         [
-          160.17149532822486,
-          -0.0
+          159.9650294021119,
+          1.928478052031702e-05
         ],
         [
-          160.23106728260558,
-          -0.0
+          160.01112136384918,
+          1.664838855201742e-05
         ],
         [
-          160.2906392369863,
-          -0.0
+          160.05721332558647,
+          1.459118146899367e-05
         ],
         [
-          160.350211191367,
-          -0.0
+          160.10330528732376,
+          1.2950590267026139e-05
         ],
         [
-          160.40978314574772,
-          -0.0
+          160.14939724906105,
+          1.161925327180511e-05
         ],
         [
-          160.46935510012844,
-          -0.0
+          160.19548921079834,
+          1.0522030272116597e-05
         ],
         [
-          160.52892705450915,
-          -0.0
+          160.24158117253563,
+          9.605211737166536e-06
         ],
         [
-          160.6259323588013,
-          -0.0
+          160.3166327641328,
+          8.40182525348866e-06
         ],
         [
-          160.72293766309343,
-          -0.0
+          160.39168435572998,
+          7.460183379512086e-06
         ],
         [
-          160.81994296738557,
-          -0.0
+          160.46673594732715,
+          6.7054938135933744e-06
         ],
         [
-          160.9169482716777,
-          -0.0
+          160.54178753892432,
+          6.088093662798506e-06
         ],
         [
-          161.01395357596985,
-          -0.0
+          160.6168391305215,
+          5.573827246720535e-06
         ],
         [
-          161.110958880262,
-          -0.0
+          160.69189072211867,
+          5.138675508859532e-06
         ],
         [
-          161.26736304673776,
-          -0.0
+          160.81292628958846,
+          4.5616034748032636e-06
         ],
         [
-          161.42376721321352,
-          -0.0
+          160.93396185705825,
+          4.097122248995984e-06
         ],
         [
-          161.5801713796893,
-          -0.0
+          161.05499742452804,
+          3.714220324949364e-06
         ],
         [
-          161.73657554616506,
-          -0.0
+          161.17603299199783,
+          3.3923493780933382e-06
         ],
         [
-          161.89297971264082,
-          -0.0
+          161.29706855946762,
+          3.117575108356589e-06
         ],
         [
-          162.11653214894974,
-          -0.0
+          161.46985652170034,
+          2.788340167625027e-06
         ],
         [
-          162.34008458525867,
-          -0.0
+          161.64264448393305,
+          2.5168043112257625e-06
         ],
         [
-          162.5636370215676,
-          -0.0
+          161.81543244616577,
+          2.290214314770458e-06
         ],
         [
-          162.7871894578765,
-          -0.0
+          161.9882204083985,
+          2.09976093292837e-06
         ],
         [
-          163.01074189418543,
-          -0.0
+          162.1610083706312,
+          1.9390374497300706e-06
         ],
         [
-          163.3020518484637,
-          -0.0
+          162.38610275126362,
+          1.7662487316012295e-06
         ],
         [
-          163.59336180274195,
-          -0.0
+          162.61119713189603,
+          1.627139350284773e-06
         ],
         [
-          163.88467175702021,
-          -0.0
+          162.83629151252845,
+          1.5151358901983549e-06
         ],
         [
-          164.17598171129848,
-          -0.0
+          163.06138589316086,
+          1.4250799532908427e-06
         ],
         [
-          164.4850936705858,
-          -0.0
+          163.3001953672972,
+          1.3485555197251426e-06
         ],
         [
-          164.79420562987312,
-          -0.0
+          163.53900484143352,
+          1.288131657758013e-06
         ],
         [
-          165.10331758916044,
-          -0.0
+          163.77781431556986,
+          1.2405098968195848e-06
         ],
         [
-          165.4129391221861,
-          -0.0
+          164.01699558831393,
+          1.202992611813694e-06
         ],
         [
-          165.72256065521174,
-          -0.0
+          164.256176861058,
+          1.1735459532793104e-06
         ],
         [
-          166.03218218823739,
-          -0.0
+          164.49535813380209,
+          1.1504758291861176e-06
         ],
         [
-          166.34184757413777,
-          -0.0
+          164.73455176863084,
+          1.1324301624318327e-06
         ],
         [
-          167.93141144685217,
-          -0.0
+          165.96552936083825,
+          1.0777260909764906e-06
         ],
         [
-          169.52097531956656,
-          -0.0
+          167.19650695304566,
+          1.063670639307315e-06
         ],
         [
-          171.11053919228095,
-          -0.0
+          168.42748454525307,
+          1.063419489538377e-06
         ],
         [
-          175.76088994831585,
-          -0.0
+          172.0340398974043,
+          1.0628972591656698e-06
         ],
         [
-          180.41124070435075,
-          -0.0
+          175.64059524955556,
+          1.0657975133795229e-06
         ],
         [
-          185.06159146038564,
-          -0.0
+          179.2471506017068,
+          1.0663060720891895e-06
         ],
         [
-          202.12571753179242,
-          -0.0
+          196.48491242496618,
+          1.0630421042196613e-06
         ],
         [
-          219.1898436031992,
-          -0.0
+          213.72267424822556,
+          1.0585465926326224e-06
         ],
         [
-          236.25396967460597,
-          -0.0
+          230.96043607148493,
+          1.0545920030577964e-06
         ],
         [
-          261.9195710352043,
-          -0.0
+          256.216460721343,
+          1.0487909724279652e-06
         ],
         [
-          287.5851723958026,
-          -0.0
+          281.4724853712011,
+          1.043395869094023e-06
         ],
         [
-          298.2290954115797,
-          -0.0
+          298.21839993404154,
+          1.0401053252708618e-06
         ]
       ],
-      "title": "R1 (N) x Time (S)",
+      "title": "R2 (N) x Time (S)",
       "inputs": [
         "Time (s)"
       ],
       "outputs": [
-        "R1 (N)"
+        "R2 (N)"
       ],
       "interpolation": "spline",
       "extrapolation": "zero",
       "signature": {
         "module": "rocketpy.mathutils.function",
-        "name": "Function"
+        "name": "Function",
+        "hash": 8532846656342
       }
     },
-    "R2": {
+    "R3": {
       "source": [
         [
           0.0,
           0.0
         ],
         [
-          0.0014095582940420635,
-          0.0
-        ],
-        [
-          0.002819116588084127,
-          0.0
-        ],
-        [
-          0.005638233176168254,
-          0.0
-        ],
-        [
-          0.008457349764252381,
-          0.0
-        ],
-        [
-          0.011276466352336508,
-          0.0
-        ],
-        [
-          0.03946763223317778,
-          0.0
-        ],
-        [
-          0.04085528032083424,
-          0.0
-        ],
-        [
-          0.042242928408490706,
-          0.0
-        ],
-        [
-          0.045018224583803626,
-          0.0
-        ],
-        [
-          0.047793520759116546,
-          0.0
-        ],
-        [
-          0.05056881693442947,
-          0.0
-        ],
-        [
-          0.051535065794346184,
-          0.0
-        ],
-        [
-          0.0525013146542629,
-          0.0
-        ],
-        [
-          0.05443381237409633,
+          0.00140955829402094,
           0.0
         ],
         [
-          0.056366310093929756,
+          0.00281911658804188,
           0.0
         ],
         [
-          0.05829880781376318,
+          0.00563823317608376,
           0.0
         ],
         [
-          0.06066778422868188,
+          0.00845734976412564,
           0.0
         ],
         [
-          0.06303676064360057,
+          0.01127646635216752,
           0.0
         ],
         [
-          0.06540573705851926,
+          0.039467632232586314,
           0.0
         ],
         [
-          0.08909550120770625,
+          0.04085528032029989,
           0.0
         ],
         [
-          0.09280001741842829,
+          0.04224292840801347,
           0.0
         ],
         [
-          0.09574786203389758,
+          0.04501822458344063,
           0.0
         ],
         [
-          0.09869570664936687,
+          0.047793520758867794,
           0.0
         ],
         [
-          0.10099207719472714,
+          0.050568816934294956,
           0.0
         ],
         [
-          0.1032884477400874,
+          0.051535065794208836,
           0.0
         ],
         [
-          0.10558481828544766,
+          0.052501314654122715,
           0.0
         ],
         [
-          0.11017755937616817,
+          0.05443381237395048,
           0.0
         ],
         [
-          0.11477030046688869,
+          0.056366310093778245,
           0.0
         ],
         [
-          0.1193630415576092,
-          0.0
-        ],
-        [
-          0.13127045763130013,
-          0.0
+          0.05829880781360601,
+          -8.08909682633622e-09
         ],
         [
-          0.14317787370499105,
-          0.0
+          0.06066778422864502,
+          -3.2877524560210185e-07
         ],
         [
-          0.14995992644651876,
-          0.0
+          0.06303676064368403,
+          -2.5050735450601826e-06
         ],
         [
-          0.1542011028620784,
-          0.0
+          0.06540573705872305,
+          -9.72217272083501e-06
         ],
         [
-          0.15844227927763802,
-          0.0
+          0.08909550120911316,
+          -0.0022480170741770262
         ],
         [
-          0.16268345569319764,
-          0.0
+          0.09280001741983737,
+          -0.003503589675083711
         ],
         [
-          0.1711658085243169,
-          0.0
+          0.09574786203637055,
+          -0.004875091035587023
         ],
         [
-          0.17964816135543615,
-          0.0
+          0.09869570665290373,
+          -0.006691303165309521
         ],
         [
-          0.1881305141865554,
-          0.0
+          0.10099207719695144,
+          -0.008445740626404265
         ],
         [
-          0.19446574773727407,
-          0.0
+          0.10328844774099916,
+          -0.01045952607754576
         ],
         [
-          0.20080098128799273,
-          0.0
+          0.10558481828504687,
+          -0.01270051823205982
         ],
         [
-          0.2056611859339936,
-          0.0
+          0.1101775593731423,
+          -0.017877584954618872
         ],
         [
-          0.21052139057999447,
-          0.0
+          0.11477030046123773,
+          -0.024004047379676947
         ],
         [
-          0.21538159522599534,
-          0.0
+          0.11936304154933317,
+          -0.031728413777428785
         ],
         [
-          0.22510200451799706,
-          0.0
+          0.1312706469438581,
+          -0.058890516787469524
         ],
         [
-          0.23482241380999877,
-          0.0
+          0.14317825233838302,
+          -0.09754549604786789
         ],
         [
-          0.24454282310200048,
-          0.0
+          0.1499601229088181,
+          -0.12490041071937827
         ],
         [
-          0.2542632323940022,
-          0.0
+          0.1542012180187087,
+          -0.14222464484871553
         ],
         [
-          0.35146732531401936,
-          0.0
+          0.1584423131285993,
+          -0.1604325441596111
         ],
         [
-          0.3632465986442917,
-          0.0
+          0.1626834082384899,
+          -0.17947492871251172
         ],
         [
-          0.3693545968582991,
-          -0.005655151826775264
+          0.1711655984582711,
+          -0.2198727866631574
         ],
         [
-          0.37546259507230645,
-          -0.011543102401047646
+          0.17964778867805228,
+          -0.2630356802467035
         ],
         [
-          0.3876785915003212,
-          -0.024020930640346327
+          0.18812997889783348,
+          -0.3074425693539326
         ],
         [
-          0.39989458792833593,
-          -0.03743109224305693
+          0.19446537171097383,
+          -0.3412854907475413
         ],
         [
-          0.4121105843563507,
-          -0.05177232757350909
+          0.20080076452411422,
+          -0.3759226870456819
         ],
         [
-          0.4714932108541475,
-          -0.13453972565307498
+          0.20566109450366143,
+          -0.4033081718512906
         ],
         [
-          0.5078257800637102,
-          -0.19558116574441373
+          0.21052142448320865,
+          -0.4317313188348346
         ],
         [
-          0.5343429255049618,
-          -0.24476753502959575
+          0.21538175446275587,
+          -0.46119977527413936
         ],
         [
-          0.5608600709462134,
-          -0.2975057774974014
+          0.22510241442185028,
+          -0.5229093704665613
         ],
         [
-          0.587377216387465,
-          -0.3534099795086484
+          0.23482307438094469,
+          -0.5881386033361102
         ],
         [
-          0.6404115072699682,
-          -0.4727564514124784
+          0.2445437343400391,
+          -0.6574376891393634
         ],
         [
-          0.6934457981524714,
-          -0.5976388090808982
+          0.2542643942991335,
+          -0.7308450491380976
         ],
         [
-          0.7464800890349746,
-          -0.7210765274592299
+          0.3514709938900776,
+          -1.6852550127357373
         ],
         [
-          0.7995143799174779,
-          -0.8340323758585726
+          0.36324670161934375,
+          -1.8289490111846078
         ],
         [
-          0.8131556786423583,
-          -0.8600838066576244
+          0.3693547037882063,
+          -1.9060091775114003
         ],
         [
-          0.8267969773672387,
-          -0.8845145231501764
+          0.3754627059570688,
+          -1.984758875617228
         ],
         [
-          0.8404382760921191,
-          -0.9071126693320626
+          0.3876787102947939,
+          -2.147169980180996
         ],
         [
-          0.8773817713324279,
-          -0.9574112292622019
+          0.39989471463251897,
+          -2.3163998250075046
         ],
         [
-          0.9143252665727367,
-          -0.9882390531347371
+          0.41211071897024404,
+          -2.492503113367169
         ],
         [
-          0.9512687618130455,
-          -0.9950737429911224
+          0.47147904178591876,
+          -3.448624113063301
         ],
         [
-          0.9671044469204755,
-          -0.9895057128167413
+          0.5078212847273655,
+          -4.117554525533945
         ],
         [
-          0.9987682629763311,
-          -0.9616939785429363
+          0.5343387025617514,
+          -4.6454390034998765
         ],
         [
-          1.0182059593067265,
-          -0.9325547768266806
+          0.5608561203961373,
+          -5.205985372768253
         ],
         [
-          1.037643655637122,
-          -0.8937039792545451
+          0.5873735382305232,
+          -5.799520080032192
         ],
         [
-          1.0570813519675175,
-          -0.8447940560558095
+          0.6404083738992948,
+          -7.086755688536677
         ],
         [
-          1.0878522163238507,
-          -0.7466309741818666
+          0.6934432095680665,
+          -8.508744111565381
         ],
         [
-          1.1186230806801838,
-          -0.6226233707340907
+          0.7464780452368381,
+          -10.068363263178808
         ],
         [
-          1.1439344065815038,
-          -0.501388000696898
+          0.7995128809056098,
+          -11.767257116560007
         ],
         [
-          1.1692457324828238,
-          -0.36377719061788966
+          0.813164227469089,
+          -12.227724589569375
         ],
         [
-          1.1945570583841438,
-          -0.21118804488813048
+          0.8268155740325682,
+          -12.697341249923856
         ],
         [
-          1.2316667865519533,
-          0.03645451613722059
+          0.8404669205960474,
+          -13.176607102506624
         ],
         [
-          1.2687765147197627,
-          0.3044237005025296
+          0.8775732859954444,
+          -14.527664630318863
         ],
         [
-          1.3058862428875722,
-          0.5808528787406227
+          0.9146796513948413,
+          -15.950217343800249
         ],
         [
-          1.3429959710553816,
-          0.8518002157045335
+          0.9517860167942382,
+          -17.44521816124127
         ],
         [
-          1.4022433435144068,
-          1.2344336026289087
+          0.9674325642455079,
+          -18.09727588818802
         ],
         [
-          1.447124093183637,
-          1.4457531243110682
+          0.9990075872778321,
+          -19.45681575778614
         ],
         [
-          1.4920048428528674,
-          1.5564981894899819
+          1.0183793592598076,
+          -20.31677342061399
         ],
         [
-          1.5261259080406766,
-          1.5567524125542942
+          1.037751131241783,
+          -21.194998288414848
         ],
         [
-          1.5602469732284858,
-          1.476446324510632
+          1.0571229032237586,
+          -22.09212333917613
         ],
         [
-          1.594368038416295,
-          1.3130474340518825
+          1.0878788324799102,
+          -23.55421590372705
         ],
         [
-          1.6284891036041043,
-          1.0692872162782259
+          1.118634761736062,
+          -25.06294925631352
         ],
         [
-          1.6626101687919135,
-          0.7538600980315493
+          1.1439443303803107,
+          -26.33947581792407
         ],
         [
-          1.6967312339797227,
-          0.3817464614819844
+          1.1692538990245596,
+          -27.647506772357417
         ],
         [
-          1.730852299167532,
-          -0.026000709763666106
+          1.1945634676688084,
+          -28.987663219040257
         ],
         [
-          1.770204581699234,
-          -0.5061451339489302
+          1.2316568052102488,
+          -31.008893780590906
         ],
         [
-          1.809556864230936,
-          -0.9521611295217641
+          1.2687501427516892,
+          -33.098705920622265
         ],
         [
-          1.8489091467626382,
-          -1.3147126750171056
+          1.3058434802931296,
+          -35.257484583747335
         ],
         [
-          1.8882614292943403,
-          -1.548589956529428
+          1.34293681783457,
+          -37.48524551852654
         ],
         [
-          1.9276137118260424,
-          -1.6192856259014967
+          1.4021386812930872,
+          -41.18404050570714
         ],
         [
-          1.9669659943577444,
-          -1.5088363818486557
+          1.447031703480718,
+          -44.10806829831661
         ],
         [
-          2.0063182768894463,
-          -1.2205570576605296
+          1.491924725668349,
+          -47.134657536281566
         ],
         [
-          2.0456705594211484,
-          -0.7817332309785865
+          1.5260726318617992,
+          -49.503858878255265
         ],
         [
-          2.0850228419528505,
-          -0.24321645830048977
+          1.5602205380552494,
+          -51.92829951369614
         ],
         [
-          2.1243751244845526,
-          0.32502463492580524
+          1.5943684442486996,
+          -54.40683418638501
         ],
         [
-          2.1637274070162547,
-          0.8423937688584172
+          1.6285163504421498,
+          -56.939124598001285
         ],
         [
-          2.2030796895479567,
-          1.2293642649752425
+          1.6626642566356,
+          -59.52516292235098
         ],
         [
-          2.242431972079659,
-          1.4208514585074978
+          1.6968121628290502,
+          -62.16501801110514
         ],
         [
-          2.281784254611361,
-          1.3788026735539582
+          1.7309600690225004,
+          -64.85875302410346
         ],
         [
-          2.321136537143063,
-          1.1023320718362222
+          1.770308643380365,
+          -68.0292210323114
         ],
         [
-          2.360488819674765,
-          0.6322149425806473
+          1.8096572177382295,
+          -71.27219836328611
         ],
         [
-          2.399841102206467,
-          0.0476412544586443
+          1.849005792096094,
+          -74.58732172113784
         ],
         [
-          2.4391933847381693,
-          -0.5453283753871521
+          1.8883543664539586,
+          -77.97467673889602
         ],
         [
-          2.4785456672698714,
-          -1.0329582657824647
+          1.9277029408118231,
+          -81.44149507758
         ],
         [
-          2.5178979498015734,
-          -1.3168482589375146
+          1.9670515151696877,
+          -85.03835431425695
         ],
         [
-          2.5572502323332755,
-          -1.336204118832962
+          2.006400089527552,
+          -88.74728491255783
         ],
         [
-          2.5966025148649776,
-          -1.0840903959540131
+          2.0457486638854165,
+          -92.53135395874821
         ],
         [
-          2.6359547973966797,
-          -0.6132541797845582
+          2.085097238243281,
+          -96.38799917994028
         ],
         [
-          2.675307079928382,
-          -0.028627413541990852
+          2.124445812601145,
+          -100.3176460331716
         ],
         [
-          2.714659362460084,
-          0.5337305276421764
+          2.1637943869590095,
+          -104.32608968557636
         ],
         [
-          2.7466638251883717,
-          0.8772354221156683
+          2.203142961316874,
+          -108.4353104057636
         ],
         [
-          2.7786682879166595,
-          1.0560908141247052
+          2.242491535674738,
+          -112.61991584054124
         ],
         [
-          2.8106727506449474,
-          1.0401865647251387
+          2.2818401100326025,
+          -116.88153543188233
         ],
         [
-          2.842677213373235,
-          0.8331778641589649
+          2.3211886843904668,
+          -121.22119015043646
         ],
         [
-          2.874681676101523,
-          0.4733380494491223
+          2.360537258748331,
+          -125.64016218797737
         ],
         [
-          2.9108918137851214,
-          -0.03372411471296479
+          2.3998858331061954,
+          -130.13997199001
         ],
         [
-          2.9402847513530936,
-          -0.44015839948342433
+          2.4392344074640597,
+          -134.72247439222156
         ],
         [
-          2.9637983886571173,
-          -0.7112605277841959
+          2.478582981821924,
+          -139.38973875717176
         ],
         [
-          2.987312025961141,
-          -0.9041299574038368
+          2.5179315561797884,
+          -144.14788313467503
         ],
         [
-          2.9914721939592726,
-          -0.9284995291714373
+          2.5572801305376527,
+          -148.33724698192154
         ],
         [
-          2.995632361957404,
-          -0.9497573836438055
+          2.596628704895517,
+          -152.2672678707109
         ],
         [
-          2.9997925299555357,
-          -0.9678553911352237
+          2.6359772792533813,
+          -156.20390485933228
         ],
         [
-          3.0010806713261253,
-          -0.972661000453803
+          2.6753258536112456,
+          -160.1601697791175
         ],
         [
-          3.002368812696715,
-          -0.9771558444156985
+          2.71467442796911,
+          -164.13417904063724
         ],
         [
-          3.0049450954378942,
-          -0.984902666310098
+          2.746682540487563,
+          -167.37886214976993
         ],
         [
-          3.0075213781790735,
-          -0.9913962974010235
+          2.778690653006016,
+          -170.63370563964708
         ],
         [
-          3.031179520120233,
-          -0.9996491695345907
+          2.810698765524469,
+          -173.89814597499605
         ],
         [
-          3.0548376620613924,
-          -0.9097159152178514
+          2.842706878042922,
+          -177.1715716749084
         ],
         [
-          3.078495804002552,
-          -0.7355251117111944
+          2.874714990561375,
+          -180.45322115709502
         ],
         [
-          3.1021539459437113,
-          -0.49884513188071977
+          2.9109277644238576,
+          -184.17009129338996
         ],
         [
-          3.1205915242496687,
-          -0.28667130996146606
+          2.940339896156497,
+          -188.37841171548897
         ],
         [
-          3.139029102555626,
-          -0.06726204045138695
+          2.9638563968017557,
+          -192.43496525243748
         ],
         [
-          3.1574666808615834,
-          0.14421874160855025
+          2.9873728974470146,
+          -196.500067753805
         ],
         [
-          3.1943418374734978,
-          0.4942680088023539
+          2.991532758872659,
+          -197.2200574449169
         ],
         [
-          3.223214302746968,
-          0.6504328541431185
+          2.995692620298303,
+          -197.9403065292627
         ],
         [
-          3.252086768020438,
-          0.6743021138443361
+          2.999852481723947,
+          -198.66080132352613
         ],
         [
-          3.2809592332939084,
-          0.567561267259938
+          3.0011406359017885,
+          -198.88358544503546
         ],
         [
-          3.2861061530217075,
-          0.5355755092208871
+          3.00242879007963,
+          -199.10565116852743
         ],
         [
-          3.2912530727495066,
-          0.5004256247559441
+          3.0050050984353125,
+          -199.54673868272397
         ],
         [
-          3.2963999924773058,
-          0.4623867139260057
+          3.007581406790995,
+          -199.98493110803963
         ],
         [
-          3.3042992470019175,
-          0.3991322470170549
+          3.0312400452524226,
+          -203.88718130162485
         ],
         [
-          3.312198501526529,
-          0.3307386410032186
+          3.05489868371385,
+          -207.5329734726283
         ],
         [
-          3.320097756051141,
-          0.2581906590450869
+          3.0785573221752776,
+          -210.911965869383
         ],
         [
-          3.329990894740742,
-          0.16323422754247713
+          3.102215960636705,
+          -214.0146933619913
         ],
         [
-          3.339884033430343,
-          0.06552611838348399
+          3.120664542586555,
+          -216.2368588470854
         ],
         [
-          3.349777172119944,
-          -0.03287274097258298
+          3.139113124536405,
+          -218.28215964789393
         ],
         [
-          3.3683253555356067,
-          -0.21022931239247458
+          3.1575617064862547,
+          -220.1472728837547
         ],
         [
-          3.3868735389512694,
-          -0.3703112477424211
+          3.194458870385954,
+          -223.32548464166027
         ],
         [
-          3.4020443640890705,
-          -0.48221869292999303
+          3.2233916577517485,
+          -225.29267686696653
         ],
         [
-          3.4113407650123997,
-          -0.5401884083245337
+          3.252324445117543,
+          -226.79077955809453
         ],
         [
-          3.420637165935729,
-          -0.5886353118925638
+          3.2812572324833376,
+          -227.81514543553246
         ],
         [
-          3.429933566859058,
-          -0.6268495123401466
+          3.2864042093564865,
+          -227.947513884781
         ],
         [
-          3.446308281894537,
-          -0.6679129319722659
+          3.2915511862296354,
+          -228.06480041168479
         ],
         [
-          3.4626829969300164,
-          -0.6755485205279343
+          3.2966981631027843,
+          -228.16699962533752
         ],
         [
-          3.4790577119654955,
-          -0.6509534955686309
+          3.3044731976480057,
+          -228.29865277450864
         ],
         [
-          3.5098113349838638,
-          -0.5336821958366209
+          3.312248232193227,
+          -228.40968432253584
         ],
         [
-          3.534175816549051,
-          -0.3888790753401239
+          3.3200232667384486,
+          -228.50274518150098
         ],
         [
-          3.558540298114238,
-          -0.21870283214259628
+          3.3299608976332786,
+          -228.59698123052397
         ],
         [
-          3.582904779679425,
-          -0.04357627849032702
+          3.3398985285281086,
+          -228.66380913110356
         ],
         [
-          3.615075076269808,
-          0.16852403360096146
+          3.3498361594229387,
+          -228.70341272891807
         ],
         [
-          3.6472453728601906,
-          0.31817039600064523
+          3.3684063767347974,
+          -228.70478548619232
         ],
         [
-          3.6794156694505733,
-          0.37512355279972637
+          3.386976594046656,
+          -228.61173844792566
         ],
         [
-          3.711585966040956,
-          0.33241221051009523
+          3.4020328166662903,
+          -228.46960074680734
         ],
         [
-          3.7510748617223286,
-          0.1641357937259817
+          3.4113057466050263,
+          -228.36155151660353
         ],
         [
-          3.790563757403701,
-          -0.07531653009134354
+          3.4205786765437622,
+          -228.2430575983782
         ],
         [
-          3.830052653085074,
-          -0.3016222245449787
+          3.429851606482498,
+          -228.11514644836984
         ],
         [
-          3.862940498739986,
-          -0.424052019006656
+          3.4462125806335115,
+          -227.8676208272554
         ],
         [
-          3.895828344394898,
-          -0.46203523151053316
+          3.462573554784525,
+          -227.59237917948025
         ],
         [
-          3.901564462162616,
-          -0.45981561237686147
+          3.4789345289355382,
+          -227.28967602411097
         ],
         [
-          3.9073005799303346,
-          -0.45521266886348855
+          3.5099101021393686,
+          -226.64209723970862
         ],
         [
-          3.913036697698053,
-          -0.44829038992033654
+          3.5343946919875657,
+          -226.0617462101071
         ],
         [
-          3.924489906398398,
-          -0.4280110951037031
+          3.558879281835763,
+          -225.42156554476162
         ],
         [
-          3.935943115098743,
-          -0.39975667705759743
+          3.58336387168396,
+          -224.72214889281227
         ],
         [
-          3.947396323799088,
-          -0.36451036447368956
+          3.6154318916074843,
+          -223.71747259322976
         ],
         [
-          3.975516795322242,
-          -0.2590359907130278
+          3.6474999115310087,
+          -222.61367916815777
         ],
         [
-          4.003637266845396,
-          -0.13858800120629322
+          3.679567931454533,
+          -221.41236238688734
         ],
         [
-          4.03175773836855,
-          -0.02073253474150251
+          3.7116359513780575,
+          -220.11515209221943
         ],
         [
-          4.071718134752553,
-          0.1174916091717057
+          3.750677226849746,
+          -218.40889504161268
         ],
         [
-          4.111678531136556,
-          0.18799917425238843
+          3.789718502321435,
+          -216.56625652925396
         ],
         [
-          4.151638927520558,
-          0.17451811707381304
+          3.8287597777931235,
+          -214.59061091495659
         ],
         [
-          4.191599323904561,
-          0.0874534081378742
+          3.867801053264812,
+          -212.4854645398158
         ],
         [
-          4.247720558129715,
-          -0.10385102699561441
+          3.906842328736501,
+          -210.26619896004954
         ],
         [
-          4.293788946145795,
-          -0.2530110956149777
+          3.9127975041938576,
+          -209.92102288745653
         ],
         [
-          4.3319865166419085,
-          -0.3208536328387622
+          3.9187526796512144,
+          -209.57625793951442
         ],
         [
-          4.370184087138022,
-          -0.32083081903538857
+          3.9247078551085712,
+          -209.23210787533426
         ],
         [
-          4.408381657634136,
-          -0.25977227386578816
+          3.9366182060232844,
+          -208.54591731691744
         ],
         [
-          4.44657922813025,
-          -0.16032160148868713
+          3.9485285569379975,
+          -207.86252645433453
         ],
         [
-          4.484776798626363,
-          -0.05236807231728931
+          3.9604389078527107,
+          -207.18195030177378
         ],
         [
-          4.527459427885128,
-          0.04397315827613322
+          3.9894733064604,
+          -205.5345846065087
         ],
         [
-          4.570142057143892,
-          0.08820871255194937
+          4.018507705068089,
+          -203.90371897108653
         ],
         [
-          4.612824686402656,
-          0.07143246257098572
+          4.047542103675778,
+          -202.28915894439842
         ],
         [
-          4.655507315661421,
-          0.004664884512482054
+          4.0765765022834675,
+          -200.69067762530884
         ],
         [
-          4.698189944920185,
-          -0.08675874869734043
+          4.119155795005119,
+          -198.37510586602477
         ],
         [
-          4.752240597633832,
-          -0.19300599534965335
+          4.16173508772677,
+          -196.09296476059873
         ],
         [
-          4.806291250347479,
-          -0.24294730573403933
+          4.1691207712068685,
+          -195.70046379969483
         ],
         [
-          4.8603419030611255,
-          -0.2174944872344435
+          4.176506454686967,
+          -195.30894550045156
         ],
         [
-          4.914392555774772,
-          -0.13462012023527342
+          4.1838921381670655,
+          -194.9184066686669
         ],
         [
-          4.968443208488419,
-          -0.03790257650928201
+          4.1986635051272625,
+          -194.14025307275978
         ],
         [
-          5.022493861202066,
-          0.025990198000866972
+          4.2134348720874595,
+          -193.36597781766392
         ],
         [
-          5.076544513915713,
-          0.02934070135742449
+          4.2282062390476565,
+          -192.59555529298294
         ],
         [
-          5.13059516662936,
-          -0.025330159040522104
+          4.264323210631898,
+          -190.7278963761314
         ],
         [
-          5.1846458193430065,
-          -0.10897936324220411
+          4.300440182216139,
+          -188.88276715926781
         ],
         [
-          5.238696472056653,
-          -0.18162042069921017
+          4.33655715380038,
+          -187.0597849326975
         ],
         [
-          5.2927471247703,
-          -0.21143599020077936
+          4.372674125384622,
+          -185.25859394698026
         ],
         [
-          5.342460668455986,
-          -0.19341688498774687
+          4.416044435312633,
+          -183.12397702280325
         ],
         [
-          5.392174212141671,
-          -0.14236591256758344
+          4.459414745240645,
+          -181.019689863593
         ],
         [
-          5.441887755827357,
-          -0.0782569401654735
+          4.502785055168657,
+          -178.94516413520807
         ],
         [
-          5.491601299513042,
-          -0.023388708653095905
+          4.546155365096668,
+          -176.89984051444506
         ],
         [
-          5.554603109165186,
-          0.008390635629496882
+          4.58952567502468,
+          -174.94253032678358
         ],
         [
-          5.617604918817331,
-          -0.012322336164885336
+          4.632895984952691,
+          -173.62850156357968
         ],
         [
-          5.6677507107483684,
-          -0.060172049019914076
+          4.676266294880703,
+          -172.32557177823412
         ],
         [
-          5.717896502679406,
-          -0.11805403291322035
+          4.719636604808715,
+          -171.0333055327652
         ],
         [
-          5.768042294610444,
-          -0.16690320221408136
+          4.768224902129621,
+          -169.598165134678
         ],
         [
-          5.818188086541482,
-          -0.1912602556505314
+          4.816813199450527,
+          -168.17635897505127
         ],
         [
-          5.878315251829882,
-          -0.18039389497859318
+          4.865401496771433,
+          -166.76776658492344
         ],
         [
-          5.928299499698518,
-          -0.14213309771129562
+          4.913989794092339,
+          -165.3722021565405
         ],
         [
-          5.978283747567154,
-          -0.09176179819018823
+          4.962578091413246,
+          -163.98947424228302
         ],
         [
-          6.02826799543579,
-          -0.045957833379967235
+          5.016300880486902,
+          -162.47538255414656
         ],
         [
-          6.078252243304426,
-          -0.019038772210565234
+          5.070023669560559,
+          -160.97659801472
         ],
         [
-          6.14293081584079,
-          -0.021224288254038645
+          5.123746458634216,
+          -159.49294100860578
         ],
         [
-          6.196765840796611,
-          -0.05287239670717949
+          5.177469247707872,
+          -158.02422493749484
         ],
         [
-          6.250600865752432,
-          -0.09876759879893143
+          5.219601255563254,
+          -156.88270496043205
         ],
         [
-          6.304435890708253,
-          -0.1434138270663295
+          5.261733263418636,
+          -155.75015577673145
         ],
         [
-          6.3582709156640735,
-          -0.1732397549241166
+          5.3038652712740175,
+          -154.6264868838385
         ],
         [
-          6.433461438883678,
-          -0.17826415863160286
+          5.345997279129399,
+          -153.51161027433923
         ],
         [
-          6.493499513622796,
-          -0.15022070056032985
+          5.388129286984781,
+          -152.40543929794134
         ],
         [
-          6.553537588361913,
-          -0.10631053489450334
+          5.438594166103664,
+          -151.09182729240086
         ],
         [
-          6.613575663101031,
-          -0.06348998081505403
+          5.489059045222548,
+          -149.7904385942788
         ],
         [
-          6.6736137378401486,
-          -0.037024127348085537
+          5.539523924341431,
+          -148.50112765185315
         ],
         [
-          6.752474107792829,
-          -0.03794721028674834
+          5.589988803460314,
+          -147.22374949277526
         ],
         [
-          6.813959694855546,
-          -0.06652172508200671
+          5.6404536825791975,
+          -145.95816397813593
         ],
         [
-          6.875445281918263,
-          -0.10783037700757818
+          5.690918561698081,
+          -144.70425260918353
         ],
         [
-          6.93693086898098,
-          -0.14691200607240726
+          5.741383440816964,
+          -143.46185997709307
         ],
         [
-          6.998416456043697,
-          -0.16988223064806587
+          5.7918483199358475,
+          -142.2308514920768
         ],
         [
-          7.079711027784927,
-          -0.16541505043128027
+          5.842313199054731,
+          -141.0110946085612
         ],
         [
-          7.1413765714336215,
-          -0.13681049100984333
+          5.900175444574162,
+          -139.62621826326873
         ],
         [
-          7.203042115082316,
-          -0.09809736958520518
+          5.958037690093594,
+          -138.25577055099075
         ],
         [
-          7.264707658731011,
-          -0.06279367807083382
+          6.015899935613025,
+          -136.89956192532938
         ],
         [
-          7.326373202379705,
-          -0.043038878494485885
+          6.073762181132457,
+          -135.55741385506076
         ],
         [
-          7.4088916340702395,
-          -0.050668673682975784
+          6.1316244266518884,
+          -134.22913414942005
         ],
         [
-          7.471438984396619,
-          -0.08154978160096257
+          6.18948667217132,
+          -132.9145421654445
         ],
         [
-          7.533986334722999,
-          -0.12230598476458077
+          6.2473489176907515,
+          -131.602388124674
         ],
         [
-          7.596533685049379,
-          -0.15678993535236438
+          6.305211163210183,
+          -130.3000322230361
         ],
         [
-          7.659081035375759,
-          -0.16870713223289885
+          6.374869724777001,
+          -128.75015987485764
         ],
         [
-          7.748666795076123,
-          -0.12962955434565815
+          6.44452828634382,
+          -127.03883270843585
         ],
         [
-          7.759103537845691,
-          -0.12058327540854827
+          6.514186847910638,
+          -125.26769579923621
         ],
         [
-          7.769540280615259,
-          -0.11149143642572065
+          6.583845409477457,
+          -123.52432589134423
         ],
         [
-          7.779977023384827,
-          -0.10249761928247068
+          6.653503971044275,
+          -121.81743205672062
         ],
         [
-          7.800850508923962,
-          -0.08532921040913588
+          6.723162532611093,
+          -120.13833588269367
         ],
         [
-          7.821723994463097,
-          -0.06966823818946152
+          6.792821094177912,
+          -118.48511769967168
         ],
         [
-          7.842597480002232,
-          -0.05603859481512857
+          6.856149583247434,
+          -117.01244886277343
         ],
         [
-          7.900172892552435,
-          -0.031439469178483184
+          6.919478072316956,
+          -115.56001802418177
         ],
         [
-          7.957748305102638,
-          -0.029115783047013736
+          6.982806561386478,
+          -114.12747242266029
         ],
         [
-          8.01532371765284,
-          -0.04825897532368559
+          7.046135050456,
+          -112.72057628149444
         ],
         [
-          8.072899130203044,
-          -0.08227140411520148
+          7.109463539525522,
+          -111.33405010798592
         ],
         [
-          8.14886572486838,
-          -0.13345806749968092
+          7.172792028595044,
+          -109.96615759240028
         ],
         [
-          8.224832319533714,
-          -0.17169616718656822
+          7.236120517664566,
+          -108.6203599976078
         ],
         [
-          8.30079891419905,
-          -0.18102764223902154
+          7.299449006734088,
+          -107.29525011418978
         ],
         [
-          8.376765508864384,
-          -0.15961260634441315
+          7.36277749580361,
+          -105.98763202431155
         ],
         [
-          8.45273210352972,
-          -0.11947321889083405
+          7.441907419493829,
+          -104.38093803702778
         ],
         [
-          8.5564809550127,
-          -0.06602578878304702
+          7.521037343184047,
+          -102.8045859458547
         ],
         [
-          8.632458997358304,
-          -0.05219177154512992
+          7.600167266874266,
+          -101.25370338964997
         ],
         [
-          8.708437039703908,
-          -0.06691112781612525
+          7.696303025687341,
+          -99.4092468749692
         ],
         [
-          8.784415082049511,
-          -0.10303203719908484
+          7.7924387845004155,
+          -97.60206745532496
         ],
         [
-          8.860393124395115,
-          -0.1432061691859121
+          7.88857454331349,
+          -95.83340090417494
         ],
         [
-          8.936371166740718,
-          -0.16874187112416372
+          7.984710302126565,
+          -94.1014650148345
         ],
         [
-          9.012349209086322,
-          -0.16919016452438077
+          8.08084606093964,
+          -92.40399222648031
         ],
         [
-          9.088327251431926,
-          -0.14635202988598817
+          8.176981819752715,
+          -90.74277800117335
         ],
         [
-          9.16430529377753,
-          -0.11233669798438771
+          8.27311757856579,
+          -89.11248391147834
         ],
         [
-          9.255988954542772,
-          -0.07830272726784965
+          8.374791072592975,
+          -87.4263433742568
         ],
         [
-          9.329184490076974,
-          -0.07095611398895502
+          8.47646456662016,
+          -85.77300364120332
         ],
         [
-          9.402380025611176,
-          -0.0832607585202274
+          8.578138060647346,
+          -84.16386857366031
         ],
         [
-          9.475575561145378,
-          -0.10889645868915429
+          8.679811554674531,
+          -82.58892311065259
         ],
         [
-          9.54877109667958,
-          -0.13677889519634084
+          8.781485048701716,
+          -81.04613588865335
         ],
         [
-          9.621966632213782,
-          -0.1559423497819607
+          8.883158542728902,
+          -79.53437488544394
         ],
         [
-          9.69992497595067,
-          -0.1612581486252398
+          9.00524652036951,
+          -77.75815660547967
         ],
         [
-          9.77788331968756,
-          -0.15120704195024492
+          9.12733449801012,
+          -76.02430052777137
         ],
         [
-          9.855841663424448,
-          -0.13114643598573428
+          9.249422475650729,
+          -74.33062262476058
         ],
         [
-          9.933800007161336,
-          -0.10901661517817443
+          9.371510453291338,
+          -72.67620754407962
         ],
         [
-          10.011758350898225,
-          -0.09262122853078261
+          9.493598430931947,
+          -71.05975307629944
         ],
         [
-          10.089716694635113,
-          -0.08736789031094061
+          9.615686408572556,
+          -69.4799356959837
         ],
         [
-          10.167675038372002,
-          -0.09427610407987444
+          9.638495054883064,
+          -69.18856378260134
         ],
         [
-          10.260259956542143,
-          -0.11250178660565502
+          9.661303701193573,
+          -68.89836516997865
         ],
         [
-          10.331983881553601,
-          -0.12987809795347252
+          9.684112347504081,
+          -68.60978290534943
         ],
         [
-          10.403707806565059,
-          -0.14546185969060116
+          9.729729640125099,
+          -68.0365435713475
         ],
         [
-          10.475431731576517,
-          -0.1562704363537178
+          9.775346932746116,
+          -67.46787978960995
         ],
         [
-          10.570210949134573,
-          -0.1611345484592348
+          9.820964225367133,
+          -66.90374788476727
         ],
         [
-          10.664990166692629,
-          -0.1538497276341324
+          9.921906879777866,
+          -65.67390941288978
         ],
         [
-          10.759769384250685,
-          -0.13768016308662862
+          10.004312108890508,
+          -64.7051583992213
         ],
         [
-          10.854548601808741,
-          -0.11955878104423402
+          10.08671733800315,
+          -63.7497336127924
         ],
         [
-          10.949327819366797,
-          -0.10692751857749161
+          10.16912256711579,
+          -62.808195430879
         ],
         [
-          11.044107036924853,
-          -0.10481073741354158
+          10.318508402311611,
+          -61.14281695880934
         ],
         [
-          11.138886254482909,
-          -0.11402799592288303
+          10.416310959001898,
+          -60.074760054584765
         ],
         [
-          11.223078569708694,
-          -0.1283187873539775
+          10.514113515692184,
+          -59.02610282391402
         ],
         [
-          11.307270884934479,
-          -0.14379817686261934
+          10.61191607238247,
+          -57.9940312870514
         ],
         [
-          11.391463200160263,
-          -0.15663179497350715
+          10.709718629072757,
+          -56.97953210515867
         ],
         [
-          11.526298565803183,
-          -0.1667268843733238
+          10.84073505366698,
+          -55.64694710070572
         ],
         [
-          11.629928166907957,
-          -0.16271043959075848
+          10.935791309767657,
+          -54.69809362513022
         ],
         [
-          11.733557768012732,
-          -0.15053131669381198
+          11.030847565868333,
+          -53.76525132654425
         ],
         [
-          11.837187369117506,
-          -0.1355672841173897
+          11.12590382196901,
+          -52.846449935492885
         ],
         [
-          11.940816970222281,
-          -0.12412138947013265
+          11.220960078069686,
+          -51.94253249704858
         ],
         [
-          12.064752353445058,
-          -0.1212434937214647
+          11.34293278943959,
+          -50.80361978410617
         ],
         [
-          12.188687736667836,
-          -0.13087371261968173
+          11.4367198655186,
+          -49.94280515612015
         ],
         [
-          12.312623119890613,
-          -0.14825904964510628
+          11.530506941597611,
+          -49.09632027682706
         ],
         [
-          12.43655850311339,
-          -0.16567301440264925
+          11.624294017676622,
+          -48.26217759168542
         ],
         [
-          12.560493886336168,
-          -0.17613424792007676
+          11.718081093755632,
+          -47.44063108198505
         ],
         [
-          12.684429269558946,
-          -0.17636504540852999
+          11.830682395509069,
+          -46.47150362289038
         ],
         [
-          12.808364652781723,
-          -0.16778815076532022
+          11.943283697262505,
+          -45.51916166325738
         ],
         [
-          12.831782867710663,
-          -0.165414247993183
+          12.055884999015941,
+          -44.58491649392819
         ],
         [
-          12.855201082639603,
-          -0.16297497514725162
+          12.168486300769377,
+          -43.66700083561476
         ],
         [
-          12.878619297568543,
-          -0.1605296952944692
+          12.29994439393496,
+          -42.61642359581969
         ],
         [
-          12.925455727426423,
-          -0.15587898578544535
+          12.404633593778348,
+          -41.79549978335351
         ],
         [
-          12.972292157284302,
-          -0.15176653009468377
+          12.509322793621736,
+          -40.98776318329905
         ],
         [
-          13.019128587142182,
-          -0.14846149330697883
+          12.614011993465125,
+          -40.19417811684891
         ],
         [
-          13.153906925069139,
-          -0.1445452260011044
+          12.718701193308513,
+          -39.41310935629711
         ],
         [
-          13.288685262996095,
-          -0.14978161422510738
+          12.865684810686352,
+          -38.33848693272592
         ],
         [
-          13.423463600923052,
-          -0.16196874261114022
+          12.973565119592086,
+          -37.56533281043477
         ],
         [
-          13.558241938850008,
-          -0.1761000453881999
+          13.08144542849782,
+          -36.80508790442792
         ],
         [
-          13.693020276776965,
-          -0.18693164158415795
+          13.189325737403555,
+          -36.058032530345436
         ],
         [
-          13.827798614703921,
-          -0.1912190793115463
+          13.29720604630929,
+          -35.322980559714686
         ],
         [
-          13.962576952630878,
-          -0.18880026632205144
+          13.455915925693203,
+          -34.2645183689006
         ],
         [
-          14.097355290557834,
-          -0.1822852778187096
+          13.572668910835402,
+          -33.502013573354695
         ],
         [
-          14.23213362848479,
-          -0.17568843313378255
+          13.6894218959776,
+          -32.753608333717516
         ],
         [
-          14.366911966411747,
-          -0.17269758464428564
+          13.8061748811198,
+          -32.018511543783724
         ],
         [
-          14.54025856584105,
-          -0.1765193183042812
+          13.922927866261999,
+          -31.296413780356346
         ],
         [
-          14.682392980564643,
-          -0.18588861972985177
+          14.085961813353116,
+          -30.310081749927555
         ],
         [
-          14.824527395288236,
-          -0.1978986389943359
+          14.204687031875425,
+          -29.606957804069587
         ],
         [
-          14.966661810011828,
-          -0.2090899116169816
+          14.323412250397734,
+          -28.91703479188913
         ],
         [
-          15.108796224735421,
-          -0.21679210291698703
+          14.442137468920043,
+          -28.239154297089318
         ],
         [
-          15.286616031474669,
-          -0.22045850418332796
+          14.560862687442352,
+          -27.573982148622438
         ],
         [
-          15.464435838213916,
-          -0.2187632659849466
+          14.727812813776477,
+          -26.65853593618671
         ],
         [
-          15.642255644953163,
-          -0.21547384849923182
+          14.852763845864722,
+          -25.988887950582708
         ],
         [
-          15.82007545169241,
-          -0.2148404735669181
+          14.977714877952966,
+          -25.331798468144388
         ],
         [
-          15.997895258431658,
-          -0.21977032058732843
+          15.10266591004121,
+          -24.687196132436792
         ],
         [
-          16.175715065170905,
-          -0.2306501259893093
+          15.227616942129455,
+          -24.0550576066291
         ],
         [
-          16.353534871910153,
-          -0.245344607579225
+          15.39474055277627,
+          -23.228062638663634
         ],
         [
-          16.5313546786494,
-          -0.26034398139403614
+          15.526750000917001,
+          -22.589955437851685
         ],
         [
-          16.709174485388647,
-          -0.2723880704781294
+          15.658759449057733,
+          -21.964353067589276
         ],
         [
-          16.886994292127895,
-          -0.2797944682416804
+          15.790768897198465,
+          -21.351852620625145
         ],
         [
-          17.0827216691956,
-          -0.2832461275868822
+          15.922778345339196,
+          -20.75131298517169
         ],
         [
-          17.245756216665097,
-          -0.2842418950345449
+          16.079671368014623,
+          -20.05377536770548
         ],
         [
-          17.408790764134594,
-          -0.2861228346609354
+          16.23656439069005,
+          -19.37266000109073
         ],
         [
-          17.57182531160409,
-          -0.2909839387752314
+          16.393457413365475,
+          -18.708411054218683
         ],
         [
-          17.734859859073588,
-          -0.2999947109409517
+          16.5503504360409,
+          -18.059837136761736
         ],
         [
-          17.87633414755382,
-          -0.3109886366249038
+          16.72307251287968,
+          -17.364523561638425
         ],
         [
-          17.989632326456782,
-          -0.3214640643384214
+          16.895794589718456,
+          -16.687523408899835
         ],
         [
-          18.102930505359744,
-          -0.3327632930247223
+          17.068516666557233,
+          -16.02909401123161
         ],
         [
-          18.216228684262706,
-          -0.34438940428746057
+          17.24123874339601,
+          -15.38836231472697
         ],
         [
-          18.392123725075212,
-          -0.3625713344860062
+          17.413960820234788,
+          -14.765212050208959
         ],
         [
-          18.568018765887718,
-          -0.3797817995453241
+          17.60482627556807,
+          -14.096552200702796
         ],
         [
-          18.743913806700224,
-          -0.39533831771796724
+          17.79569173090135,
+          -13.448137383959555
         ],
         [
-          18.91980884751273,
-          -0.4094965989033409
+          17.98655718623463,
+          -12.820092331447904
         ],
         [
-          19.13456671816614,
-          -0.42608136953505354
+          18.17742264156791,
+          -12.211696110822997
         ],
         [
-          19.349324588819552,
-          -0.4438241389798904
+          18.368288096901193,
+          -11.623342082160137
         ],
         [
-          19.564082459472964,
-          -0.46472980463866626
+          18.559153552234473,
+          -11.053655442163349
         ],
         [
-          19.778840330126375,
-          -0.489964879913262
+          18.750019007567754,
+          -10.502075861030178
         ],
         [
-          19.993598200779786,
-          -0.5196781541567238
+          18.940884462901035,
+          -9.968719204945597
         ],
         [
-          20.208356071433197,
-          -0.553318126303578
+          19.160009857916293,
+          -9.377839316874871
         ],
         [
-          20.42311394208661,
-          -0.5901563717918059
+          19.37913525293155,
+          -8.809691619791206
         ],
         [
-          20.63787181274002,
-          -0.6297077828236552
+          19.59826064794681,
+          -8.26392594515536
         ],
         [
-          20.89524769419444,
-          -0.6805892785838223
+          19.817386042962067,
+          -7.739822267321157
         ],
         [
-          21.152623575648857,
-          -0.7357878896984014
+          20.036511437977325,
+          -7.237168780062127
         ],
         [
-          21.409999457103275,
-          -0.796309955954225
+          20.343119545325326,
+          -6.569105801562854
         ],
         [
-          21.667375338557694,
-          -0.8632019465994388
+          20.649727652673327,
+          -5.941210692594855
         ],
         [
-          21.924751220012112,
-          -0.9372863208046456
+          20.95633576002133,
+          -5.352586113503728
         ],
         [
-          22.18212710146653,
-          -1.0192025472243709
+          21.26294386736933,
+          -4.802413985234657
         ],
         [
-          22.469164792221026,
-          -1.1205897382195116
+          21.56955197471733,
+          -4.289954946243541
         ],
         [
-          22.75620248297552,
-          -1.2334031699760875
+          21.876160082065333,
+          -3.814547994604357
         ],
         [
-          23.043240173730016,
-          -1.3584092725303276
+          22.182768189413334,
+          -3.3756392668989896
         ],
         [
-          23.33027786448451,
-          -1.4961707657294645
+          22.489376296761336,
+          -2.9727883372290704
         ],
         [
-          23.617315555239006,
-          -1.6470308349895284
+          22.837549744359293,
+          -2.5583484074620886
         ],
         [
-          23.9043532459935,
-          -1.8112493807373067
+          23.18572319195725,
+          -2.1892003227259265
         ],
         [
-          24.191390936747997,
-          -1.9892628772487377
+          23.53389663955521,
+          -1.864930934769018
         ],
         [
-          24.419341542299552,
-          -2.1410482967058306
+          23.882070087153167,
+          -1.5852506935960506
         ],
         [
-          24.647292147851108,
-          -2.3029355845371446
+          24.230243534751125,
+          -1.3500055613878148
         ],
         [
-          24.875242753402663,
-          -2.4760852847670285
+          24.578416982349083,
+          -1.1590427299024004
         ],
         [
-          25.10319335895422,
-          -2.661791249388256
+          24.92659042994704,
+          -1.0123866539641717
         ],
         [
-          25.331143964505774,
-          -2.860906315694959
+          25.274763877545,
+          -0.9099276062267991
         ],
         [
-          25.51872139829633,
-          -3.0343632570342605
+          25.544320922023445,
+          -0.8609970626389322
         ],
         [
-          25.706298832086883,
-          -3.2143498839263502
+          25.81387796650189,
+          -0.8385291169804515
         ],
         [
-          25.884966627110675,
-          -3.3876159611132426
+          25.885098654500275,
+          -0.8370004307969151
         ],
         [
           25.88571428571429,
-          -3.3883356563560314
+          -0.8369952350358059
         ],
         [
-          25.891724887187262,
-          -3.394087420319469
+          25.891725275535915,
+          -0.8369518569629607
         ],
         [
-          25.897735488660235,
-          -3.3998328780408764
+          25.89773626535754,
+          -0.8369215744147077
         ],
         [
-          25.909756691606184,
-          -3.4113646341583
+          25.90975824500079,
+          -0.8369000988031934
         ],
         [
-          25.921777894552132,
-          -3.422867218390892
+          25.921780224644042,
+          -0.8369309897609759
         ],
         [
-          25.93379909749808,
-          -3.434337684002789
+          25.933802204287293,
+          -0.8370142375219062
         ],
         [
-          26.05401112695755,
-          -3.5465717251568254
+          26.05402200071982,
+          -0.8407241695243486
         ],
         [
-          26.17422315641702,
-          -3.6516785865728676
+          26.174241797152344,
+          -0.8496591612399937
         ],
         [
-          26.29443518587649,
-          -3.745130847592188
+          26.29446159358487,
+          -0.8638099264559368
         ],
         [
-          26.41464721533596,
-          -3.8213268188826284
+          26.414681390017396,
+          -0.8831682245477787
         ],
         [
-          26.590536971802308,
-          -3.887428025453559
+          26.59056092778596,
+          -0.9208577263810969
         ],
         [
-          26.766426728268655,
-          -3.876522800623082
+          26.76644046555452,
+          -0.9696666288891519
         ],
         [
-          26.942316484735002,
-          -3.7584806814872094
+          26.942320003323083,
+          -1.0295442967529218
         ],
         [
-          27.11820624120135,
-          -3.4995308137363015
+          27.118199541091645,
+          -1.1005010722779875
         ],
         [
-          27.294095997667696,
-          -3.0642249749797585
+          27.294079078860207,
+          -1.1825734620516093
         ],
         [
           27.38571428571429,
-          -2.7560790830377417
+          -1.2297406897274301
         ],
         [
-          27.403707346930535,
-          -194.09516900408218
+          27.397496400123647,
+          136.39399500317572
         ],
         [
-          27.42170040814678,
-          -192.14427007923288
+          27.409278514533003,
+          135.98871478986723
         ],
         [
-          27.457686530579274,
-          -188.31901444250286
+          27.43284274335172,
+          135.20026052982328
         ],
         [
-          27.493672653011767,
-          -184.6204071615953
+          27.456406972170438,
+          134.45390452055221
         ],
         [
-          27.52965877544426,
-          -181.0428954511361
+          27.479971200989155,
+          133.74789062289298
         ],
         [
-          27.722358182653522,
-          -163.74545968723078
+          27.597382226258187,
+          130.78017428832953
         ],
         [
-          27.915057589862784,
-          -149.0931500947788
+          27.71479325152722,
+          128.59825105985922
         ],
         [
-          28.107756997072045,
-          -136.5637224003685
+          27.83220427679625,
+          127.06652598719685
         ],
         [
-          28.300456404281306,
-          -125.75188087503722
+          27.949615302065283,
+          126.07601077547722
         ],
         [
-          28.59167900359794,
-          -111.9831710394068
+          28.127223521019754,
+          125.41088915546473
         ],
         [
-          28.882901602914572,
-          -100.60858395613636
+          28.304831739974226,
+          125.53983592832819
         ],
         [
-          29.174124202231205,
-          -91.04416479961905
+          28.482439958928698,
+          126.27232059395855
         ],
         [
-          29.465346801547838,
-          -82.86491961344086
+          28.66004817788317,
+          127.45306339093239
         ],
         [
-          29.75656940086447,
-          -75.76285009336226
+          28.83765639683764,
+          128.95730449336676
         ],
         [
-          30.25579246872472,
-          -65.47248514707175
+          29.142165265211645,
+          132.0038766701522
         ],
         [
-          30.75501553658497,
-          -56.93601358156434
+          29.44667413358565,
+          135.3162909994632
         ],
         [
-          31.25423860444522,
-          -49.676848744084964
+          29.751183001959653,
+          138.61953233741366
         ],
         [
-          31.75346167230547,
-          -43.406745918255545
+          30.055691870333657,
+          141.74317374750487
         ],
         [
-          32.25268474016572,
-          -37.9386968205183
+          30.36020073870766,
+          144.5872422414433
         ],
         [
-          32.75190780802597,
-          -33.14503744463423
+          30.664709607081665,
+          147.10288410347349
         ],
         [
-          33.48826295234864,
-          -27.11666118016388
+          31.156066194366023,
+          150.45273290734576
         ],
         [
-          34.224618096671314,
-          -22.13728947519077
+          31.64742278165038,
+          152.9961002011685
         ],
         [
-          34.96097324099399,
-          -18.03546892622457
+          32.138779368934735,
+          154.86864844313027
         ],
         [
-          35.69732838531666,
-          -14.667819930696378
+          32.63013595621909,
+          156.21479368232377
         ],
         [
-          36.43368352963933,
-          -11.911821175768335
+          33.12149254350345,
+          157.16453753846696
         ],
         [
-          37.18331742700439,
-          -9.626300043218404
+          33.61284913078781,
+          157.82570825217726
         ],
         [
-          37.93295132436945,
-          -7.772413550816141
+          34.104205718072166,
+          158.28101039472847
         ],
         [
-          38.682585221734506,
-          -6.271393207170878
+          34.59556230535652,
+          158.59160090706874
         ],
         [
-          39.432219119099564,
-          -5.05776684363864
+          35.20520071519727,
+          158.8407240397384
         ],
         [
-          40.18185301646462,
-          -4.077522092240157
+          35.81483912503802,
+          158.99347796883623
         ],
         [
-          41.55565606299418,
-          -2.745000472775269
+          36.42447753487877,
+          159.0875015473243
         ],
         [
-          42.92945910952374,
-          -1.8473667902960387
+          37.03411594471952,
+          159.1438842607644
         ],
         [
-          44.3032621560533,
-          -1.2432314731417244
+          37.61030939313683,
+          159.1756780981901
         ],
         [
-          45.67706520258286,
-          -0.8363873227353121
+          38.186502841554145,
+          159.19506562619108
         ],
         [
-          47.05086824911242,
-          -0.5626146214276259
+          38.76269628997146,
+          159.2069430399047
         ],
         [
-          48.62323521534373,
-          -0.3572663433913696
+          39.33888973838877,
+          159.21413570232832
         ],
         [
-          50.19560218157505,
-          -0.22703351802638885
+          40.470199282925094,
+          159.22126369868874
         ],
         [
-          51.76796914780636,
-          -0.14428940745800226
+          41.601508827461416,
+          159.2255373573111
         ],
         [
-          53.340336114037676,
-          -0.09163994250008135
+          42.73281837199774,
+          159.22725908143448
         ],
         [
-          54.91270308026899,
-          -0.05821933260176147
+          43.86412791653406,
+          159.225908142027
         ],
         [
-          55.86204148248446,
-          -0.04428287015050406
+          45.065546566682556,
+          159.2244855663799
         ],
         [
-          56.811379884699925,
-          -0.03365050589477766
+          46.26696521683105,
+          159.2246166211047
         ],
         [
-          57.76071828691539,
-          -0.025569135491433886
+          47.46838386697955,
+          159.22566363715117
         ],
         [
-          58.71005668913086,
-          -0.01942907261637772
+          48.0644116487991,
+          159.22592496961457
         ],
         [
-          59.701612671241776,
-          -0.01455206913055588
+          48.66043943061865,
+          159.22584662992284
         ],
         [
-          60.69316865335269,
-          -0.010903648454371409
+          49.2564672124382,
+          159.2257916045638
         ],
         [
-          61.68472463546361,
-          -0.008172215505089762
+          49.85016027085198,
+          159.22581579878644
         ],
         [
-          63.019700273431596,
-          -0.00553525936393423
+          50.44385332926576,
+          159.2258661419841
         ],
         [
-          64.35467591139958,
-          -0.003755572808568397
+          51.037546387679534,
+          159.22591888567032
         ],
         [
-          65.68965154936757,
-          -0.0025492675783530478
+          52.22602215013901,
+          159.226030765982
         ],
         [
-          67.66870000169779,
-          -0.0014346540955095738
+          53.414497912598485,
+          159.2261555007455
         ],
         [
-          69.647748454028,
-          -0.0008253462123901555
+          54.60297367505796,
+          159.2262904914918
         ],
         [
-          71.62679690635822,
-          -0.00047931023558956233
+          55.78628196962012,
+          159.22642809640723
         ],
         [
-          73.60427163292789,
-          -0.00027655569143280115
+          56.96959026418228,
+          159.22656529160525
         ],
         [
-          75.58174635949756,
-          -0.00015853193481702146
+          58.15289855874444,
+          159.22670400807397
         ],
         [
-          77.55922108606723,
-          -9.094640162424583e-05
+          59.80914674127502,
+          159.22690779420887
         ],
         [
-          83.74360774187622,
-          -9.9198336433432e-05
+          61.465394923805604,
+          159.2271280871246
         ],
         [
-          89.92799439768521,
-          -0.0003724359141763626
+          63.12164310633619,
+          159.22736268965988
         ],
         [
-          91.47409106163745,
-          -0.00034914604633245355
+          67.96806599954927,
+          159.22896010369874
         ],
         [
-          93.0201877255897,
-          -0.0002205437316814415
+          69.17967172285253,
+          159.22918779995624
         ],
         [
-          94.56628438954193,
-          -0.00013168601770284112
+          71.60288316945908,
+          159.229050696303
         ],
         [
-          95.55174469780209,
-          -9.819909824091574e-05
+          74.02609461606562,
+          159.22905328795255
         ],
         [
-          96.53720500606225,
-          -7.371986860645898e-05
+          76.44930606267216,
+          159.22931264165175
         ],
         [
-          97.52266531432241,
-          -5.5279747515397906e-05
+          82.05653011294073,
+          159.23019425773583
         ],
         [
-          98.50866761324593,
-          -4.1427357672749255e-05
+          87.6637541632093,
+          159.2312295457744
         ],
         [
-          104.229915181177,
-          1.9159446368116446e-06
+          93.27097821347787,
+          159.23231896149284
         ],
         [
-          109.95116274910808,
-          7.832181329678016e-06
+          102.7701466845776,
+          159.23431181509957
         ],
         [
-          115.67241031703915,
-          4.654986200955496e-06
+          112.26931515567732,
+          159.2364480332916
         ],
         [
-          123.80427445904986,
-          -3.8244334359168094e-06
+          121.76848362677704,
+          159.23879303095595
         ],
         [
-          131.93613860106058,
-          -9.771154901818006e-06
+          131.26765209787678,
+          159.2413311409325
         ],
         [
-          140.0680027430713,
-          -6.631259504639051e-06
+          142.3439771582361,
+          159.24454948544027
         ],
         [
-          148.19986688508203,
-          -2.760934116316147e-06
+          153.42030221859542,
+          159.247931863626
         ],
         [
-          158.3904761904762,
-          2.4539448722878246e-07
+          158.24761904761905,
+          159.24952532524358
         ],
         [
-          158.5093989588007,
-          2.371305620978589e-07
+          158.36654057116988,
+          159.24953772841843
         ],
         [
-          158.62832172712518,
-          2.2914486787817244e-07
+          158.4854620947207,
+          159.2495527907015
         ],
         [
-          159.8904761904762,
-          1.5768953159897154e-07
+          159.74761904761905,
+          159.24980730286606
         ],
         [
-          159.89288732694692,
-          1.556017848419384e-06
+          159.74948515317416,
+          1572.5099457096608
         ],
         [
-          159.89529846341765,
-          1.535557721470189e-06
+          159.75135125872927,
+          1552.9224147329667
         ],
         [
-          159.90012073635913,
-          1.4955797487867027e-06
+          159.75508346983946,
+          1514.6450986808445
         ],
         [
-          159.9049430093006,
-          1.457167339657654e-06
+          159.75881568094965,
+          1477.8708817007778
         ],
         [
-          159.9097652822421,
-          1.420239658338595e-06
+          159.76254789205984,
+          1442.5221260577005
         ],
         [
-          159.93243780659526,
-          1.2644538701069062e-06
+          159.78008817979105,
+          1293.505375328392
         ],
         [
-          159.95511033094843,
-          1.1333203229669532e-06
+          159.79762846752226,
+          1168.1367442743522
         ],
         [
-          159.9777828553016,
-          1.0219139453363527e-06
+          159.81516875525347,
+          1061.6939928001789
         ],
         [
-          160.00045537965477,
-          9.26463503672266e-07
+          159.83270904298467,
+          970.5608316110549
         ],
         [
-          160.0346633693688,
-          8.063462075923761e-07
+          159.85917311481012,
+          855.9931078872264
         ],
         [
-          160.0688713590828,
-          7.086417233205232e-07
+          159.88563718663556,
+          762.9383449541734
         ],
         [
-          160.10307934879683,
-          6.281005295058913e-07
+          159.912101258461,
+          686.3642027037148
         ],
         [
-          160.13728733851084,
-          5.608962955434053e-07
+          159.93856533028645,
+          622.6004886198915
         ],
         [
-          160.17149532822486,
-          5.042255830721311e-07
+          159.9650294021119,
+          568.9592657435654
         ],
         [
-          160.23106728260558,
-          4.246928598624067e-07
+          160.01112136384918,
+          493.9586443314504
         ],
         [
-          160.2906392369863,
-          3.6314973067660996e-07
+          160.05721332558647,
+          436.2783904347272
         ],
         [
-          160.350211191367,
-          3.1446179918628784e-07
+          160.10330528732376,
+          390.9842188833614
         ],
         [
-          160.40978314574772,
-          2.75253058236686e-07
+          160.14939724906105,
+          354.83712396832624
         ],
         [
-          160.46935510012844,
-          2.4317563036577086e-07
+          160.19548921079834,
+          325.5807491805215
         ],
         [
-          160.52892705450915,
-          2.1656170345039258e-07
+          160.24158117253563,
+          301.60907962357913
         ],
         [
-          160.6259323588013,
-          1.8193520058735115e-07
+          160.3166327641328,
+          271.01222465692246
         ],
         [
-          160.72293766309343,
-          1.551333536346259e-07
+          160.39168435572998,
+          247.9973852055508
         ],
         [
-          160.81994296738557,
-          1.3388301792279194e-07
+          160.46673594732715,
+          230.35892859971747
         ],
         [
-          160.9169482716777,
-          1.1668733186445364e-07
+          160.54178753892432,
+          216.63786024872348
         ],
         [
-          161.01395357596985,
-          1.0252538870366998e-07
+          160.6168391305215,
+          205.83157988014062
         ],
         [
-          161.110958880262,
-          9.068412950804239e-08
+          160.69189072211867,
+          197.2350646532561
         ],
         [
-          161.26736304673776,
-          7.524135148266655e-08
+          160.81292628958846,
+          186.79201084219875
         ],
         [
-          161.42376721321352,
-          6.309028069195213e-08
+          160.93396185705825,
+          179.34762154750786
         ],
         [
-          161.5801713796893,
-          5.332097355320395e-08
+          161.05499742452804,
+          173.9817607369272
         ],
         [
-          161.73657554616506,
-          4.532972308781306e-08
+          161.17603299199783,
+          170.078230040998
         ],
         [
-          161.89297971264082,
-          3.87041644486589e-08
+          161.29706855946762,
+          167.21683866466276
         ],
         [
-          162.11653214894974,
-          3.104563856007848e-08
+          161.46985652170034,
+          164.3826050249555
         ],
         [
-          162.34008458525867,
-          2.5014076777750267e-08
+          161.64264448393305,
+          162.54286905841911
         ],
         [
-          162.5636370215676,
-          2.0212889633673902e-08
+          161.81543244616577,
+          161.3396056494146
         ],
         [
-          162.7871894578765,
-          1.6364160915971567e-08
+          161.9882204083985,
+          160.54818719686608
         ],
         [
-          163.01074189418543,
-          1.3265082793868406e-08
+          162.1610083706312,
+          160.02818707192114
         ],
         [
-          163.3020518484637,
-          1.0103703788806425e-08
+          162.38610275126362,
+          159.60866329156647
         ],
         [
-          163.59336180274195,
-          7.702780573297123e-09
+          162.61119713189603,
+          159.36404321214448
         ],
         [
-          163.88467175702021,
-          5.874549823299097e-09
+          162.83629151252845,
+          159.21901734260885
         ],
         [
-          164.17598171129848,
-          4.4814753273511735e-09
+          163.06138589316086,
+          159.1350403976581
         ],
         [
-          164.4850936705858,
-          3.356231642697393e-09
+          163.3001953672972,
+          159.08396035700952
         ],
         [
-          164.79420562987312,
-          2.5149480224853847e-09
+          163.53900484143352,
+          159.05688636531735
         ],
         [
-          165.10331758916044,
-          1.8852558620118533e-09
+          163.77781431556986,
+          159.04210660387042
         ],
         [
-          165.4129391221861,
-          1.4125817338214635e-09
+          164.01699558831393,
+          159.03343979405312
         ],
         [
-          165.72256065521174,
-          1.058419041535782e-09
+          164.256176861058,
+          159.02834689857445
         ],
         [
-          166.03218218823739,
-          7.930585189582909e-10
+          164.49535813380209,
+          159.02544908622988
         ],
         [
-          166.34184757413777,
-          5.942059334018719e-10
+          164.73455176863084,
+          159.0238314777694
         ],
         [
-          167.93141144685217,
-          2.6298211767576453e-11
+          165.96552936083825,
+          159.0205786996566
         ],
         [
-          169.52097531956656,
-          -8.224097869790898e-11
+          167.19650695304566,
+          159.0213691969279
         ],
         [
-          171.11053919228095,
-          -5.971954768726153e-11
+          168.42748454525307,
+          159.02230377443175
         ],
         [
-          175.76088994831585,
-          -4.15182170598881e-11
+          172.0340398974043,
+          159.0235170898396
         ],
         [
-          180.41124070435075,
-          -9.163366503849665e-12
+          175.64059524955556,
+          159.02444827197664
         ],
         [
-          185.06159146038564,
-          4.1800254916215156e-13
+          179.2471506017068,
+          159.02537778277457
         ],
         [
-          202.12571753179242,
-          4.296244362911916e-12
+          196.48491242496618,
+          159.02988125920157
         ],
         [
-          219.1898436031992,
-          4.851604724260167e-13
+          213.72267424822556,
+          159.0343659864128
         ],
         [
-          236.25396967460597,
-          -6.874889252043967e-14
+          230.96043607148493,
+          159.03883042859766
         ],
         [
-          261.9195710352043,
-          -2.783899532962809e-12
+          256.216460721343,
+          159.04530084964014
         ],
         [
-          287.5851723958026,
-          -2.8138962373268282e-12
+          281.4724853712011,
+          159.05176451743608
         ],
         [
-          298.2290954115797,
-          -2.531628030546716e-12
+          298.21839993404154,
+          159.05585837435584
         ]
       ],
-      "title": "R2 (N) x Time (S)",
+      "title": "R3 (N) x Time (S)",
       "inputs": [
         "Time (s)"
       ],
       "outputs": [
-        "R2 (N)"
+        "R3 (N)"
       ],
       "interpolation": "spline",
       "extrapolation": "zero",
       "signature": {
         "module": "rocketpy.mathutils.function",
-        "name": "Function"
+        "name": "Function",
+        "hash": 8532846655721
       }
     },
-    "R3": {
+    "M1": {
       "source": [
         [
           0.0,
           0.0
         ],
         [
-          0.0014095582940420635,
+          0.00140955829402094,
           0.0
         ],
         [
-          0.002819116588084127,
+          0.00281911658804188,
           0.0
         ],
         [
-          0.005638233176168254,
+          0.00563823317608376,
           0.0
         ],
         [
-          0.008457349764252381,
+          0.00845734976412564,
           0.0
         ],
         [
-          0.011276466352336508,
+          0.01127646635216752,
           0.0
         ],
         [
-          0.03946763223317778,
+          0.039467632232586314,
           0.0
         ],
         [
-          0.04085528032083424,
+          0.04085528032029989,
           0.0
         ],
         [
-          0.042242928408490706,
+          0.04224292840801347,
           0.0
         ],
         [
-          0.045018224583803626,
+          0.04501822458344063,
           0.0
         ],
         [
-          0.047793520759116546,
+          0.047793520758867794,
           0.0
         ],
         [
-          0.05056881693442947,
+          0.050568816934294956,
           0.0
         ],
         [
-          0.051535065794346184,
+          0.051535065794208836,
           0.0
         ],
         [
-          0.0525013146542629,
+          0.052501314654122715,
           0.0
         ],
         [
-          0.05443381237409633,
+          0.05443381237395048,
           0.0
         ],
         [
-          0.056366310093929756,
+          0.056366310093778245,
           0.0
         ],
         [
-          0.05829880781376318,
-          -8.089096828943483e-09
-        ],
-        [
-          0.06066778422868188,
-          -3.2877524561526485e-07
-        ],
-        [
-          0.06303676064360057,
-          -2.505073544917692e-06
-        ],
-        [
-          0.06540573705851926,
-          -9.722172719866634e-06
-        ],
-        [
-          0.08909550120770625,
-          -0.002248017073789855
-        ],
-        [
-          0.09280001741842829,
-          -0.003503589674515243
-        ],
-        [
-          0.09574786203389758,
-          -0.004875091034263724
-        ],
-        [
-          0.09869570664936687,
-          -0.006691303162852906
-        ],
-        [
-          0.10099207719472714,
-          -0.0084457406246057
-        ],
-        [
-          0.1032884477400874,
-          -0.010459526076775902
-        ],
-        [
-          0.10558481828544766,
-          -0.012700518232501753
-        ],
-        [
-          0.11017755937616817,
-          -0.017877584962408547
-        ],
-        [
-          0.11477030046688869,
-          -0.024004047393009143
-        ],
-        [
-          0.1193630415576092,
-          -0.03172841377631517
-        ],
-        [
-          0.13127045763130013,
-          -0.0588899991260379
+          0.05829880781360601,
+          0.0
         ],
         [
-          0.14317787370499105,
-          -0.09754406122958437
+          0.06066778422864502,
+          0.0
         ],
         [
-          0.14995992644651876,
-          -0.12489962941814677
+          0.06303676064368403,
+          0.0
         ],
         [
-          0.1542011028620784,
-          -0.14222415243469025
+          0.06540573705872305,
+          0.0
         ],
         [
-          0.15844227927763802,
-          -0.16043237839662777
+          0.08909550120911316,
+          0.0
         ],
         [
-          0.16268345569319764,
-          -0.17947509037355572
+          0.09280001741983737,
+          0.0
         ],
         [
-          0.1711658085243169,
-          -0.2198737473848563
+          0.09574786203637055,
+          0.0
         ],
         [
-          0.17964816135543615,
-          -0.26303762445613005
+          0.09869570665290373,
+          0.0
         ],
         [
-          0.1881305141865554,
-          -0.3074453343612342
+          0.10099207719695144,
+          0.0
         ],
         [
-          0.19446574773727407,
-          -0.3412874508282697
+          0.10328844774099916,
+          0.0
         ],
         [
-          0.20080098128799273,
-          -0.3759238717527594
+          0.10558481828504687,
+          0.0
         ],
         [
-          0.2056611859339936,
-          -0.40330868267140707
+          0.1101775593731423,
+          0.0
         ],
         [
-          0.21052139057999447,
-          -0.4317311022184331
+          0.11477030046123773,
+          0.0
         ],
         [
-          0.21538159522599534,
-          -0.4611987772003734
+          0.11936304154933317,
+          0.0
         ],
         [
-          0.22510200451799706,
-          -0.5229066650251932
+          0.1312706469438581,
+          0.0
         ],
         [
-          0.23482241380999877,
-          -0.5881339656573904
+          0.14317825233838302,
+          0.0
         ],
         [
-          0.24454282310200048,
-          -0.657431021956484
+          0.1499601229088181,
+          0.0
         ],
         [
-          0.2542632323940022,
-          -0.730836220284435
+          0.1542012180187087,
+          0.0
         ],
         [
-          0.35146732531401936,
-          -1.6852185114071103
+          0.1584423131285993,
+          0.0
         ],
         [
-          0.3632465986442917,
-          -1.8289553917882289
+          0.1626834082384899,
+          0.0
         ],
         [
-          0.3693545968582991,
-          -1.9060156946564892
+          0.1711655984582711,
+          0.0
         ],
         [
-          0.37546259507230645,
-          -1.9847655892774019
+          0.17964778867805228,
+          0.0
         ],
         [
-          0.3876785915003212,
-          -2.1471771354579063
+          0.18812997889783348,
+          0.0
         ],
         [
-          0.39989458792833593,
-          -2.3164070157509022
+          0.19446537171097383,
+          0.0
         ],
         [
-          0.4121105843563507,
-          -2.4925099579627594
+          0.20080076452411422,
+          0.0
         ],
         [
-          0.4714932108541475,
-          -3.4488816928076935
+          0.20566109450366143,
+          0.0
         ],
         [
-          0.5078257800637102,
-          -4.117651301977049
+          0.21052142448320865,
+          0.0
         ],
         [
-          0.5343429255049618,
-          -4.645536381783535
+          0.21538175446275587,
+          0.0
         ],
         [
-          0.5608600709462134,
-          -5.206082683777849
+          0.22510241442185028,
+          0.0
         ],
         [
-          0.587377216387465,
-          -5.799616462500723
+          0.23482307438094469,
+          0.0
         ],
         [
-          0.6404115072699682,
-          -7.086847661083098
+          0.2445437343400391,
+          0.0
         ],
         [
-          0.6934457981524714,
-          -8.508828317202699
+          0.2542643942991335,
+          0.0
         ],
         [
-          0.7464800890349746,
-          -10.068438797496471
+          0.3514709938900776,
+          0.0
         ],
         [
-          0.7995143799174779,
-          -11.76732049647871
+          0.36324670161934375,
+          0.0
         ],
         [
-          0.8131556786423583,
-          -12.227446868396335
+          0.3693547037882063,
+          -0.0022231925300200397
         ],
         [
-          0.8267969773672387,
-          -12.696708973870031
+          0.3754627059570688,
+          -0.00453633851745576
         ],
         [
-          0.8404382760921191,
-          -13.175604836716962
+          0.3876787102947939,
+          -0.009435319188078972
         ],
         [
-          0.8773817713324279,
-          -14.520520554932217
+          0.39989471463251897,
+          -0.014692885586255755
         ],
         [
-          0.9143252665727367,
-          -15.93630291788183
+          0.41211071897024404,
+          -0.020307122169956386
         ],
         [
-          0.9512687618130455,
-          -17.42389060454762
+          0.47147904178591876,
+          -0.05252909673536933
         ],
         [
-          0.9671044469204755,
-          -18.083486135996942
+          0.5078212847273655,
+          -0.07613262222948378
         ],
         [
-          0.9987682629763311,
-          -19.44632761137825
+          0.5343387025617514,
+          -0.09503873329254525
         ],
         [
-          1.0182059593067265,
-          -20.30899625903019
+          0.5608561203961373,
+          -0.11519806758086648
         ],
         [
-          1.037643655637122,
-          -21.19006965200385
+          0.5873735382305232,
+          -0.13643516562691846
         ],
         [
-          1.0570813519675175,
-          -22.0901788825813
+          0.6404083738992948,
+          -0.18127682557654096
         ],
         [
-          1.0878522163238507,
-          -23.552928963587124
+          0.6934432095680665,
+          -0.22732874545031834
         ],
         [
-          1.1186230806801838,
-          -25.06236485425168
+          0.7464780452368381,
+          -0.2716580651088016
         ],
         [
-          1.1439344065815038,
-          -26.338966469422278
+          0.7995128809056098,
+          -0.3105513664274006
         ],
         [
-          1.1692457324828238,
-          -27.647076603284734
+          0.813164227469089,
+          -0.3191529730888463
         ],
         [
-          1.1945570583841438,
-          -28.987317933771433
+          0.8268155740325682,
+          -0.32702075553444443
         ],
         [
-          1.2316667865519533,
-          -31.00944458738488
+          0.8404669205960474,
+          -0.33407069236941717
         ],
         [
-          1.2687765147197627,
-          -33.10021527070036
+          0.8775732859954444,
+          -0.3484332084392332
         ],
         [
-          1.3058862428875722,
-          -35.26001180804713
+          0.9146796513948413,
+          -0.354372772931837
         ],
         [
-          1.3429959710553816,
-          -37.48885252531679
+          0.9517860167942382,
+          -0.3501359922589382
         ],
         [
-          1.4022433435144068,
-          -41.19074090811719
+          0.9674325642455079,
+          -0.34486473668195927
         ],
         [
-          1.447124093183637,
-          -44.11419118032626
+          0.9990075872778321,
+          -0.32747506821526784
         ],
         [
-          1.4920048428528674,
-          -47.14014889317276
+          1.0183793592598076,
+          -0.31193890702845584
         ],
         [
-          1.5261259080406766,
-          -49.50760083320739
+          1.037751131241783,
+          -0.292529450212457
         ],
         [
-          1.5602469732284858,
-          -51.930201505817635
+          1.0571229032237586,
+          -0.2691416634021697
         ],
         [
-          1.594368038416295,
-          -54.406809288849445
+          1.0878788324799102,
+          -0.2238786386458157
         ],
         [
-          1.6284891036041043,
-          -56.93708906283237
+          1.118634761736062,
+          -0.1685831981884489
         ],
         [
-          1.6626101687919135,
-          -59.52103125468673
+          1.1439443303803107,
+          -0.11571661034934905
         ],
         [
-          1.6967312339797227,
-          -62.158707044125485
+          1.1692538990245596,
+          -0.0567093712937462
         ],
         [
-          1.730852299167532,
-          -64.8501790753335
+          1.1945634676688084,
+          0.007773933479890749
         ],
         [
-          1.770204581699234,
-          -68.02075576978713
+          1.2316568052102488,
+          0.11072248866064917
         ],
         [
-          1.809556864230936,
-          -71.26382820575486
+          1.2687501427516892,
+          0.2201427175558382
         ],
         [
-          1.8489091467626382,
-          -74.57907855951636
+          1.3058434802931296,
+          0.33094568353455583
         ],
         [
-          1.8882614292943403,
-          -77.96657784522493
+          1.34293681783457,
+          0.437277868990954
         ],
         [
-          1.9276137118260424,
-          -81.43352268481455
+          1.4021386812930872,
+          0.5819414138502739
         ],
         [
-          1.9669659943577444,
-          -85.03037405736411
+          1.447031703480718,
+          0.6557875185664179
         ],
         [
-          2.0063182768894463,
-          -88.7394996968278
+          1.491924725668349,
+          0.6857589872170993
         ],
         [
-          2.0456705594211484,
-          -92.52378150500498
+          1.5260726318617992,
+          0.6728154930880308
         ],
         [
-          2.0850228419528505,
-          -96.38062875851496
+          1.5602205380552494,
+          0.626225673406124
         ],
         [
-          2.1243751244845526,
-          -100.31051400069771
+          1.5943684442486996,
+          0.5455462525242665
         ],
         [
-          2.1637274070162547,
-          -104.3191530484604
+          1.6285163504421498,
+          0.4325760814197436
         ],
         [
-          2.2030796895479567,
-          -108.42863997353214
+          1.6626642566356,
+          0.29162090025287657
         ],
         [
-          2.242431972079659,
-          -112.61352259852536
+          1.6968121628290502,
+          0.12959113701990324
         ],
         [
-          2.281784254611361,
-          -116.87543229273341
+          1.7309600690225004,
+          -0.04413065124342026
         ],
         [
-          2.321136537143063,
-          -121.21539025902023
+          1.770308643380365,
+          -0.2438335337349295
         ],
         [
-          2.360488819674765,
-          -125.63467896700334
+          1.8096572177382295,
+          -0.4239509696558772
         ],
         [
-          2.399841102206467,
-          -130.13481803294115
+          1.849005792096094,
+          -0.5639146876186742
         ],
         [
-          2.4391933847381693,
-          -134.71766275794297
+          1.8883543664539586,
+          -0.6453459429228579
         ],
         [
-          2.4785456672698714,
-          -139.38528278792978
+          1.9277029408118231,
+          -0.6548392937919911
         ],
         [
-          2.5178979498015734,
-          -144.14378929820558
+          1.9670515151696877,
+          -0.5864180189952626
         ],
         [
-          2.5572502323332755,
-          -148.33424089295283
+          2.006400089527552,
+          -0.44345644958905905
         ],
         [
-          2.5966025148649776,
-          -152.26465766925247
+          2.0457486638854165,
+          -0.23966293150532836
         ],
         [
-          2.6359547973966797,
-          -156.20165259749572
+          2.085097238243281,
+          0.0013051791273615831
         ],
         [
-          2.675307079928382,
-          -160.15828075059983
+          2.124445812601145,
+          0.2479875723569401
         ],
         [
-          2.714659362460084,
-          -164.13265826998202
+          2.1637943869590095,
+          0.4650016117609542
         ],
         [
-          2.7466638251883717,
-          -167.37697460781376
+          2.203142961316874,
+          0.6182698371242419
         ],
         [
-          2.7786682879166595,
-          -170.63145878233058
+          2.242491535674738,
+          0.680899866153764
         ],
         [
-          2.8106727506449474,
-          -173.89553716110282
+          2.2818401100326025,
+          0.6385718978397099
         ],
         [
-          2.842677213373235,
-          -177.16859062863026
+          2.3211886843904668,
+          0.4939002828713396
         ],
         [
-          2.874681676101523,
-          -180.44986028711847
+          2.360537258748331,
+          0.2680412160993578
         ],
         [
-          2.9108918137851214,
-          -184.16646744108462
+          2.3998858331061954,
+          -0.0012185698541837715
         ],
         [
-          2.9402847513530936,
-          -188.36902846899565
+          2.4392344074640597,
+          -0.26501741324947986
         ],
         [
-          2.9637983886571173,
-          -192.42507768391988
+          2.478582981821924,
+          -0.4723950061274258
         ],
         [
-          2.987312025961141,
-          -196.4896728672134
+          2.5179315561797884,
+          -0.5806749394363551
         ],
         [
-          2.9914721939592726,
-          -197.20971205705183
+          2.5572801305376527,
+          -0.5653943926355337
         ],
         [
-          2.995632361957404,
-          -197.93001090013672
+          2.596628704895517,
+          -0.4273083925015131
         ],
         [
-          2.9997925299555357,
-          -198.650555588787
+          2.6359772792533813,
+          -0.1944726485749514
         ],
         [
-          3.0010806713261253,
-          -198.87337095581972
+          2.6753258536112456,
+          0.08185627227903396
         ],
         [
-          3.002368812696715,
-          -199.0954680145522
+          2.71467442796911,
+          0.33751008604802474
         ],
         [
-          3.0049450954378942,
-          -199.53661845719367
+          2.746682540487563,
+          0.4854184760868647
         ],
         [
-          3.0075213781790735,
-          -199.97487389107147
+          2.778690653006016,
+          0.5518942880021342
         ],
         [
-          3.031179520120233,
-          -203.87769335022588
+          2.810698765524469,
+          0.5251472660857502
         ],
         [
-          3.0548376620613924,
-          -207.52405911268514
+          2.842706878042922,
+          0.4095394232965903
         ],
         [
-          3.078495804002552,
-          -210.9036617314991
+          2.874714990561375,
+          0.22564201388647814
         ],
         [
-          3.1021539459437113,
-          -214.00703509015892
+          2.9109277644238576,
+          -0.022468035164754013
         ],
         [
-          3.1205915242496687,
-          -216.2285267673128
+          2.940339896156497,
+          -0.21418325901727595
         ],
         [
-          3.139029102555626,
-          -218.2733728572646
+          2.9638563968017557,
+          -0.3363441381864033
         ],
         [
-          3.1574666808615834,
-          -220.1382722037117
+          2.9873728974470146,
+          -0.41740194668758596
         ],
         [
-          3.1943418374734978,
-          -223.3167508908797
+          2.991532758872659,
+          -0.4267970641636471
         ],
         [
-          3.223214302746968,
-          -225.2822241178238
+          2.995692620298303,
+          -0.43464027698456864
         ],
         [
-          3.252086768020438,
-          -226.78059738455408
+          2.999852481723947,
+          -0.44091584744936496
         ],
         [
-          3.2809592332939084,
-          -227.80723430044932
+          3.0011406359017885,
+          -0.4424646355830032
         ],
         [
-          3.2861061530217075,
-          -227.94047647149685
+          3.00242879007963,
+          -0.44386068843701687
         ],
         [
-          3.2912530727495066,
-          -228.05863629566088
+          3.0050050984353125,
+          -0.44604455284371913
         ],
         [
-          3.2963999924773058,
-          -228.16170863741684
+          3.007581406790995,
+          -0.44761670824291316
         ],
         [
-          3.3042992470019175,
-          -228.29625815185713
+          3.0312400452524226,
+          -0.43758385641348607
         ],
         [
-          3.312198501526529,
-          -228.40939975978253
+          3.05489868371385,
+          -0.3813031106267627
         ],
         [
-          3.320097756051141,
-          -228.503951222152
+          3.0785573221752776,
+          -0.2867085701870426
         ],
         [
-          3.329990894740742,
-          -228.59763133638256
+          3.102215960636705,
+          -0.1655098596604475
         ],
         [
-          3.339884033430343,
-          -228.66414112982355
+          3.120664542586555,
+          -0.060355494274622834
         ],
         [
-          3.349777172119944,
-          -228.70366786508572
+          3.139113124536405,
+          0.04566292053012414
         ],
         [
-          3.3683253555356067,
-          -228.70539497786396
+          3.1575617064862547,
+          0.14534224175311525
         ],
         [
-          3.3868735389512694,
-          -228.61292374511325
+          3.194458870385954,
+          0.30318404449773606
         ],
         [
-          3.4020443640890705,
-          -228.46991218739802
+          3.2233916577517485,
+          0.3660281559607011
         ],
         [
-          3.4113407650123997,
-          -228.36157179155535
+          3.252324445117543,
+          0.3639347201784068
         ],
         [
-          3.420637165935729,
-          -228.24273387425288
+          3.2812572324833376,
+          0.2999859941563946
         ],
         [
-          3.429933566859058,
-          -228.11443118063437
+          3.2864042093564865,
+          0.2826594287917191
         ],
         [
-          3.446308281894537,
-          -227.86654631477538
+          3.2915511862296354,
+          0.2639255983534602
         ],
         [
-          3.4626829969300164,
-          -227.5908997086795
+          3.2966981631027843,
+          0.24392545370172453
         ],
         [
-          3.4790577119654955,
-          -227.2877456055645
+          3.3044731976480057,
+          0.2116778297111444
         ],
         [
-          3.5098113349838638,
-          -226.64476433466024
+          3.312248232193227,
+          0.1773509087580993
         ],
         [
-          3.534175816549051,
-          -226.0676455350116
+          3.3200232667384486,
+          0.1414150482175573
         ],
         [
-          3.558540298114238,
-          -225.43127709385078
+          3.3299608976332786,
+          0.09401527105243493
         ],
         [
-          3.582904779679425,
-          -224.736243516867
+          3.3398985285281086,
+          0.04584853122377543
         ],
         [
-          3.615075076269808,
-          -223.72963307647825
+          3.3498361594229387,
+          -0.0020768455490337845
         ],
         [
-          3.6472453728601906,
-          -222.62325576137602
+          3.3684063767347974,
+          -0.08670262389467123
         ],
         [
-          3.6794156694505733,
-          -221.41871787388678
+          3.386976594046656,
+          -0.16119992233190023
         ],
         [
-          3.711585966040956,
-          -220.1176657181873
+          3.4020328166662903,
+          -0.21140700157517037
         ],
         [
-          3.7510748617223286,
-          -218.3912184035512
+          3.4113057466050263,
+          -0.23681400583122403
         ],
         [
-          3.790563757403701,
-          -216.5252839490613
+          3.4205786765437622,
+          -0.25739846985968173
         ],
         [
-          3.830052653085074,
-          -214.52335141978227
+          3.429851606482498,
+          -0.2728772417390919
         ],
         [
-          3.862940498739986,
-          -212.75488080092762
+          3.4462125806335115,
+          -0.287303517738462
         ],
         [
-          3.895828344394898,
-          -210.89678249112706
+          3.462573554784525,
+          -0.2855342263814933
         ],
         [
-          3.901564462162616,
-          -210.56405628366733
+          3.4789345289355382,
+          -0.2684369312100708
         ],
         [
-          3.9073005799303346,
-          -210.23101385507007
+          3.5099101021393686,
+          -0.20312017672817823
         ],
         [
-          3.913036697698053,
-          -209.8983119305726
+          3.5343946919875657,
+          -0.12814481693390967
         ],
         [
-          3.924489906398398,
-          -209.23589576215005
+          3.558879281835763,
+          -0.04314437204398677
         ],
         [
-          3.935943115098743,
-          -208.57598076324504
+          3.58336387168396,
+          0.04174473894875047
         ],
         [
-          3.947396323799088,
-          -207.9186493033599
+          3.6154318916074843,
+          0.14013749031411946
         ],
         [
-          3.975516795322242,
-          -206.3157919769607
+          3.6474999115310087,
+          0.20517598442488175
         ],
         [
-          4.003637266845396,
-          -204.7284781669159
+          3.679567931454533,
+          0.22385458038706163
         ],
         [
-          4.03175773836855,
-          -203.1565292617337
+          3.7116359513780575,
+          0.1946998648675034
         ],
         [
-          4.071718134752553,
-          -200.94879174179542
+          3.750677226849746,
+          0.10675250719488508
         ],
         [
-          4.111678531136556,
-          -198.7711564995804
+          3.789718502321435,
+          -0.010051372413374872
         ],
         [
-          4.151638927520558,
-          -196.62306828922755
+          3.8287597777931235,
+          -0.11546955897359618
         ],
         [
-          4.191599323904561,
-          -194.5039800524205
+          3.867801053264812,
+          -0.17636058815133776
         ],
         [
-          4.247720558129715,
-          -191.5758484280977
+          3.906842328736501,
+          -0.1778266416119975
         ],
         [
-          4.293788946145795,
-          -189.21322830653824
+          3.9127975041938576,
+          -0.1729536003525426
         ],
         [
-          4.3319865166419085,
-          -187.2817051046202
+          3.9187526796512144,
+          -0.1669602096260274
         ],
         [
-          4.370184087138022,
-          -185.3746063442358
+          3.9247078551085712,
+          -0.15990497839820048
         ],
         [
-          4.408381657634136,
-          -183.49151957949178
+          3.9366182060232844,
+          -0.1429920382786655
         ],
         [
-          4.44657922813025,
-          -181.63203851992557
+          3.9485285569379975,
+          -0.1227824938054684
         ],
         [
-          4.484776798626363,
-          -179.79577071090955
+          3.9604389078527107,
+          -0.09993702861007892
         ],
         [
-          4.527459427885128,
-          -177.77088214834964
+          3.9894733064604,
+          -0.03736915100627086
         ],
         [
-          4.570142057143892,
-          -175.77397163788143
+          4.018507705068089,
+          0.026548522571548876
         ],
         [
-          4.612824686402656,
-          -174.23086563453253
+          4.047542103675778,
+          0.08151527658142603
         ],
         [
-          4.655507315661421,
-          -172.94351973643185
+          4.0765765022834675,
+          0.11955258023292184
         ],
         [
-          4.698189944920185,
-          -171.66667342616307
+          4.119155795005119,
+          0.1371637963771412
         ],
         [
-          4.752240597633832,
-          -170.06452694894932
+          4.16173508772677,
+          0.1086734517706749
         ],
         [
-          4.806291250347479,
-          -168.47885968550133
+          4.1691207712068685,
+          0.0992492701553524
         ],
         [
-          4.8603419030611255,
-          -166.90956963855444
+          4.176506454686967,
+          0.08890592180480292
         ],
         [
-          4.914392555774772,
-          -165.3564464657169
+          4.1838921381670655,
+          0.0777936227263286
         ],
         [
-          4.968443208488419,
-          -163.8192284173076
+          4.1986635051272625,
+          0.05400154445595301
         ],
         [
-          5.022493861202066,
-          -162.29768174342317
+          4.2134348720874595,
+          0.0288475453927731
         ],
         [
-          5.076544513915713,
-          -160.79160244832
+          4.2282062390476565,
+          0.003367781984817929
         ],
         [
-          5.13059516662936,
-          -159.30081146851174
+          4.264323210631898,
+          -0.05483278203193705
         ],
         [
-          5.1846458193430065,
-          -157.82511518518047
+          4.300440182216139,
+          -0.09746969074923054
         ],
         [
-          5.238696472056653,
-          -156.36430805191043
+          4.33655715380038,
+          -0.11576874343763549
         ],
         [
-          5.2927471247703,
-          -154.91819771303912
+          4.372674125384622,
+          -0.10742845489517722
         ],
         [
-          5.342460668455986,
-          -153.60093815821494
+          4.416044435312633,
+          -0.06715892894255876
         ],
         [
-          5.392174212141671,
-          -152.29580891872322
+          4.459414745240645,
+          -0.00840014334352103
         ],
         [
-          5.441887755827357,
-          -151.00266817091511
+          4.502785055168657,
+          0.047354192404789865
         ],
         [
-          5.491601299513042,
-          -149.72138024698978
+          4.546155365096668,
+          0.08154763797095904
         ],
         [
-          5.554603109165186,
-          -148.11441834092525
+          4.58952567502468,
+          0.0847842382374753
         ],
         [
-          5.617604918817331,
-          -146.52598873680424
+          4.632895984952691,
+          0.05877756938812693
         ],
         [
-          5.6677507107483684,
-          -145.2747660692831
+          4.676266294880703,
+          0.014876312083703777
         ],
         [
-          5.717896502679406,
-          -144.03498716221767
+          4.719636604808715,
+          -0.03112091210730801
         ],
         [
-          5.768042294610444,
-          -142.80650982269336
+          4.768224902129621,
+          -0.0674501090084026
         ],
         [
-          5.818188086541482,
-          -141.58920356378846
+          4.816813199450527,
+          -0.07598420049492874
         ],
         [
-          5.878315251829882,
-          -140.1441416059928
+          4.865401496771433,
+          -0.05617582834998067
         ],
         [
-          5.928299499698518,
-          -138.9547765029675
+          4.913989794092339,
+          -0.018217517463618535
         ],
         [
-          5.978283747567154,
-          -137.77610900229877
+          4.962578091413246,
+          0.021949224536925688
         ],
         [
-          6.02826799543579,
-          -136.60801976770682
+          5.016300880486902,
+          0.05081071199391668
         ],
         [
-          6.078252243304426,
-          -135.4503922360597
+          5.070023669560559,
+          0.051979247869675796
         ],
         [
-          6.14293081584079,
-          -133.96777325729104
+          5.123746458634216,
+          0.024452006328871977
         ],
         [
-          6.196765840796611,
-          -132.74673853718753
+          5.177469247707872,
+          -0.014387395109656198
         ],
         [
-          6.250600865752432,
-          -131.5254271291282
+          5.219601255563254,
+          -0.04878122103554634
         ],
         [
-          6.304435890708253,
-          -130.31402151117427
+          5.261733263418636,
+          -0.0755569068390764
         ],
         [
-          6.3582709156640735,
-          -129.11437077562553
+          5.3038652712740175,
+          -0.08495229676139507
         ],
         [
-          6.433461438883678,
-          -127.31884413153048
+          5.345997279129399,
+          -0.07337414828645997
         ],
         [
-          6.493499513622796,
-          -125.78687986656972
+          5.388129286984781,
+          -0.04417921397334881
         ],
         [
-          6.553537588361913,
-          -124.2756402441688
+          5.438594166103664,
+          0.0009988428204836114
         ],
         [
-          6.613575663101031,
-          -122.788002462521
+          5.489059045222548,
+          0.039258760381341254
         ],
         [
-          6.6736137378401486,
-          -121.32634263970162
+          5.539523924341431,
+          0.05606744872077128
         ],
         [
-          6.752474107792829,
-          -119.4359303854186
+          5.589988803460314,
+          0.04753698024436452
         ],
         [
-          6.813959694855546,
-          -117.98775091034082
+          5.6404536825791975,
+          0.02080834028327109
         ],
         [
-          6.875445281918263,
-          -116.5643196603896
+          5.690918561698081,
+          -0.011095710939654828
         ],
         [
-          6.93693086898098,
-          -115.15986930733038
+          5.741383440816964,
+          -0.036018193770928075
         ],
         [
-          6.998416456043697,
-          -113.77456369252289
+          5.7918483199358475,
+          -0.046995511162778184
         ],
         [
-          7.079711027784927,
-          -111.97993302849156
+          5.842313199054731,
+          -0.04303725552363215
         ],
         [
-          7.1413765714336215,
-          -110.63931009840567
+          5.900175444574162,
+          -0.024511087981224783
         ],
         [
-          7.203042115082316,
-          -109.31653960712961
+          5.958037690093594,
+          -0.00038715650346008573
         ],
         [
-          7.264707658731011,
-          -108.0170542061138
+          6.015899935613025,
+          0.018995307367173052
         ],
         [
-          7.326373202379705,
-          -106.73430884707935
+          6.073762181132457,
+          0.026468473707967757
         ],
         [
-          7.4088916340702395,
-          -105.04353289542614
+          6.1316244266518884,
+          0.020329972404809583
         ],
         [
-          7.471438984396619,
-          -103.78692956822256
+          6.18948667217132,
+          0.004421385128600443
         ],
         [
-          7.533986334722999,
-          -102.54644696022368
+          6.2473489176907515,
+          -0.013917464906208946
         ],
         [
-          7.596533685049379,
-          -101.32181914794104
+          6.305211163210183,
+          -0.027096196532621797
         ],
         [
-          7.659081035375759,
-          -100.11596543893661
+          6.374869724777001,
+          -0.03062171725186931
         ],
         [
-          7.748666795076123,
-          -98.41809344619615
+          6.44452828634382,
+          -0.020519193413286896
         ],
         [
-          7.759103537845691,
-          -98.22228501626762
+          6.514186847910638,
+          -0.0028353302442455097
         ],
         [
-          7.769540280615259,
-          -98.02688874528467
+          6.583845409477457,
+          0.013486357289756438
         ],
         [
-          7.779977023384827,
-          -97.83190355961354
+          6.653503971044275,
+          0.02096825806794446
         ],
         [
-          7.800850508923962,
-          -97.44316170545862
+          6.723162532611093,
+          0.01666515729938369
         ],
         [
-          7.821723994463097,
-          -97.05605099235676
+          6.792821094177912,
+          0.0030305924982683558
         ],
         [
-          7.842597480002232,
-          -96.67108519870399
+          6.856149583247434,
+          -0.011095234831836276
         ],
         [
-          7.900172892552435,
-          -95.62029408426979
+          6.919478072316956,
+          -0.021641920176490914
         ],
         [
-          7.957748305102638,
-          -94.58149386399538
+          6.982806561386478,
+          -0.025871082704200146
         ],
         [
-          8.01532371765284,
-          -93.55450795592421
+          7.046135050456,
+          -0.02338672640711023
         ],
         [
-          8.072899130203044,
-          -92.54041123803458
+          7.109463539525522,
+          -0.015882512650063324
         ],
         [
-          8.14886572486838,
-          -91.22311147028825
+          7.172792028595044,
+          -0.006281213609602293
         ],
         [
-          8.224832319533714,
-          -89.9252507787032
+          7.236120517664566,
+          0.0023179447994758143
         ],
         [
-          8.30079891419905,
-          -88.64784613288278
+          7.299449006734088,
+          0.007560597737416776
         ],
         [
-          8.376765508864384,
-          -87.39178595499705
+          7.36277749580361,
+          0.008390994032869907
         ],
         [
-          8.45273210352972,
-          -86.15397122208745
+          7.441907419493829,
+          0.0038300890840728963
         ],
         [
-          8.5564809550127,
-          -84.50130847342513
+          7.521037343184047,
+          -0.003620878842432909
         ],
         [
-          8.632458997358304,
-          -83.31683170017934
+          7.600167266874266,
+          -0.010388521717044949
         ],
         [
-          8.708437039703908,
-          -82.14911395630496
+          7.696303025687341,
+          -0.015109109950574393
         ],
         [
-          8.784415082049511,
-          -81.00046924707102
+          7.7924387845004155,
+          -0.013723049127227452
         ],
         [
-          8.860393124395115,
-          -79.86876938439674
+          7.88857454331349,
+          -0.007676800695732969
         ],
         [
-          8.936371166740718,
-          -78.75284934724834
+          7.984710302126565,
+          -0.0011255655436572531
         ],
         [
-          9.012349209086322,
-          -77.65465996176133
+          8.08084606093964,
+          0.0020003500898571475
         ],
         [
-          9.088327251431926,
-          -76.57252209251398
+          8.176981819752715,
+          0.00018261589830104175
         ],
         [
-          9.16430529377753,
-          -75.5052642141082
+          8.27311757856579,
+          -0.005175412959808515
         ],
         [
-          9.255988954542772,
-          -74.23918186263847
+          8.374791072592975,
+          -0.010571225559849518
         ],
         [
-          9.329184490076974,
-          -73.24414192831831
+          8.47646456662016,
+          -0.01315112250087501
         ],
         [
-          9.402380025611176,
-          -72.26210674430787
+          8.578138060647346,
+          -0.011821468633646887
         ],
         [
-          9.475575561145378,
-          -71.29440588576439
+          8.679811554674531,
+          -0.0075371845007968785
         ],
         [
-          9.54877109667958,
-          -70.34011570861966
+          8.781485048701716,
+          -0.002648693921480774
         ],
         [
-          9.621966632213782,
-          -69.3981451358936
+          8.883158542728902,
+          0.00029873048117125267
         ],
         [
-          9.69992497595067,
-          -68.40913369266471
+          9.00524652036951,
+          -0.0003816559102708117
         ],
         [
-          9.77788331968756,
-          -67.43499508689453
+          9.12733449801012,
+          -0.006598585364740908
         ],
         [
-          9.855841663424448,
-          -66.47408565238673
+          9.249422475650729,
+          -0.015260388802372987
         ],
         [
-          9.933800007161336,
-          -65.53197012239411
+          9.371510453291338,
+          -0.02032579514853232
         ],
         [
-          10.011758350898225,
-          -64.6170310925577
+          9.493598430931947,
+          -0.01679834292831442
         ],
         [
-          10.089716694635113,
-          -63.7139972949342
+          9.615686408572556,
+          -0.004814552367631467
         ],
         [
-          10.167675038372002,
-          -62.823370395124236
+          9.638495054883064,
+          -0.0018673339712183823
         ],
         [
-          10.260259956542143,
-          -61.78614382627707
+          9.661303701193573,
+          0.0008954174799399167
         ],
         [
-          10.331983881553601,
-          -60.993441758961104
+          9.684112347504081,
+          0.0033259907608704717
         ],
         [
-          10.403707806565059,
-          -60.21004178610556
+          9.729729640125099,
+          0.006819877052551618
         ],
         [
-          10.475431731576517,
-          -59.437699118293374
+          9.775346932746116,
+          0.008392574955457276
         ],
         [
-          10.570210949134573,
-          -58.43097529518078
+          9.820964225367133,
+          0.00802282744605299
         ],
         [
-          10.664990166692629,
-          -57.43983895794231
+          9.921906879777866,
+          0.002259609100844856
         ],
         [
-          10.759769384250685,
-          -56.46602934430191
+          10.004312108890508,
+          -0.005459490298263564
         ],
         [
-          10.854548601808741,
-          -55.506990498790266
+          10.08671733800315,
+          -0.01327719218165177
         ],
         [
-          10.949327819366797,
-          -54.563312922448695
+          10.16912256711579,
+          -0.019089340906008556
         ],
         [
-          11.044107036924853,
-          -53.63519102917444
+          10.318508402311611,
+          -0.021410499717396156
         ],
         [
-          11.138886254482909,
-          -52.720994478491775
+          10.416310959001898,
+          -0.016305829301964364
         ],
         [
-          11.223078569708694,
-          -51.921526386352966
+          10.514113515692184,
+          -0.0083538613816255
         ],
         [
-          11.307270884934479,
-          -51.133307068049916
+          10.61191607238247,
+          -0.0008470885923640287
         ],
         [
-          11.391463200160263,
-          -50.3554979719475
+          10.709718629072757,
+          0.0029932004520328986
         ],
         [
-          11.526298565803183,
-          -49.13301647827372
+          10.84073505366698,
+          0.00028579347040842695
         ],
         [
-          11.629928166907957,
-          -48.21145122279087
+          10.935791309767657,
+          -0.006691881554267448
         ],
         [
-          11.733557768012732,
-          -47.30543358667861
+          11.030847565868333,
+          -0.014883167226645427
         ],
         [
-          11.837187369117506,
-          -46.41505956468986
+          11.12590382196901,
+          -0.021374205224503784
         ],
         [
-          11.940816970222281,
-          -45.538885794990996
+          11.220960078069686,
+          -0.023854561599037982
         ],
         [
-          12.064752353445058,
-          -44.511108347563855
+          11.34293278943959,
+          -0.020488179221175087
         ],
         [
-          12.188687736667836,
-          -43.50306761591175
+          11.4367198655186,
+          -0.013994159939113904
         ],
         [
-          12.312623119890613,
-          -42.51539129915645
+          11.530506941597611,
+          -0.006814823572967532
         ],
         [
-          12.43655850311339,
-          -41.54686537097315
+          11.624294017676622,
+          -0.0014598559263322847
         ],
         [
-          12.560493886336168,
-          -40.59740991233894
+          11.718081093755632,
+          0.00028814524823841947
         ],
         [
-          12.684429269558946,
-          -39.66657628190947
+          11.830682395509069,
+          -0.0028025079583046814
         ],
         [
-          12.808364652781723,
-          -38.75358912810252
+          11.943283697262505,
+          -0.009960938608741532
         ],
         [
-          12.831782867710663,
-          -38.58321860921747
+          12.055884999015941,
+          -0.01797806006639252
         ],
         [
-          12.855201082639603,
-          -38.41344947068656
+          12.168486300769377,
+          -0.023552447917451924
         ],
         [
-          12.878619297568543,
-          -38.24427951516696
+          12.29994439393496,
+          -0.024439666161084367
         ],
         [
-          12.925455727426423,
-          -37.90772768101795
+          12.404633593778348,
+          -0.02072557759333718
         ],
         [
-          12.972292157284302,
-          -37.57354598851947
+          12.509322793621736,
+          -0.014770052806195921
         ],
         [
-          13.019128587142182,
-          -37.24171718592243
+          12.614011993465125,
+          -0.008796888945747428
         ],
         [
-          13.153906925069139,
-          -36.30114837304362
+          12.718701193308513,
+          -0.0049414711698323455
         ],
         [
-          13.288685262996095,
-          -35.379799604085534
+          12.865684810686352,
+          -0.005118097232933896
         ],
         [
-          13.423463600923052,
-          -34.47804657143508
+          12.973565119592086,
+          -0.009383670681957335
         ],
         [
-          13.558241938850008,
-          -33.59474004811808
+          13.08144542849782,
+          -0.015488643733198984
         ],
         [
-          13.693020276776965,
-          -32.72999963841602
+          13.189325737403555,
+          -0.021488839376165636
         ],
         [
-          13.827798614703921,
-          -31.88301391153723
+          13.29720604630929,
+          -0.02557039307181097
         ],
         [
-          13.962576952630878,
-          -31.05360417760333
+          13.455915925693203,
+          -0.026529558931274386
         ],
         [
-          14.097355290557834,
-          -30.241317287406957
+          13.572668910835402,
+          -0.023332723197340727
         ],
         [
-          14.23213362848479,
-          -29.44566966879807
+          13.6894218959776,
+          -0.018376831468561977
         ],
         [
-          14.366911966411747,
-          -28.66657682789386
+          13.8061748811198,
+          -0.0135544921726716
         ],
         [
-          14.54025856584105,
-          -27.687852815717793
+          13.922927866261999,
+          -0.010649317355723303
         ],
         [
-          14.682392980564643,
-          -26.90467298780819
+          14.085961813353116,
+          -0.011349233259789968
         ],
         [
-          14.824527395288236,
-          -26.13840655863265
+          14.204687031875425,
+          -0.015318433693355171
         ],
         [
-          14.966661810011828,
-          -25.38878213145127
+          14.323412250397734,
+          -0.02080510780664295
         ],
         [
-          15.108796224735421,
-          -24.655268265152323
+          14.442137468920043,
+          -0.026217895468280766
         ],
         [
-          15.286616031474669,
-          -23.76000069080022
+          14.560862687442352,
+          -0.030070656611433266
         ],
         [
-          15.464435838213916,
-          -22.88899481599609
+          14.727812813776477,
+          -0.031453314332823834
         ],
         [
-          15.642255644953163,
-          -22.041219479927037
+          14.852763845864722,
+          -0.02937250761301438
         ],
         [
-          15.82007545169241,
-          -21.216913756662
+          14.977714877952966,
+          -0.025786748057859132
         ],
         [
-          15.997895258431658,
-          -20.414624693544834
+          15.10266591004121,
+          -0.022105958349308466
         ],
         [
-          16.175715065170905,
-          -19.634348493038296
+          15.227616942129455,
+          -0.019693038669183205
         ],
         [
-          16.353534871910153,
-          -18.875363444880918
+          15.39474055277627,
+          -0.019797007795952587
         ],
         [
-          16.5313546786494,
-          -18.13700055126769
+          15.526750000917001,
+          -0.02275721806312364
         ],
         [
-          16.709174485388647,
-          -17.419262386669082
+          15.658759449057733,
+          -0.02742356491748446
         ],
         [
-          16.886994292127895,
-          -16.721020154948096
+          15.790768897198465,
+          -0.03261153794558069
         ],
         [
-          17.0827216691956,
-          -15.975208548508178
+          15.922778345339196,
+          -0.03708691020219937
         ],
         [
-          17.245756216665097,
-          -15.371348107634052
+          16.079671368014623,
+          -0.04030900790318806
         ],
         [
-          17.408790764134594,
-          -14.783127492968294
+          16.23656439069005,
+          -0.040943202507567195
         ],
         [
-          17.57182531160409,
-          -14.21017685352629
+          16.393457413365475,
+          -0.039605776254360375
         ],
         [
-          17.734859859073588,
-          -13.652191858902022
+          16.5503504360409,
+          -0.03751389409705194
         ],
         [
-          17.87633414755382,
-          -13.179939347745602
+          16.72307251287968,
+          -0.03586802981370124
         ],
         [
-          17.989632326456782,
-          -12.809657688422277
+          16.895794589718456,
+          -0.03624160369745641
         ],
         [
-          18.102930505359744,
-          -12.446065993611937
+          17.068516666557233,
+          -0.039170481553920306
         ],
         [
-          18.216228684262706,
-          -12.090122863416724
+          17.24123874339601,
+          -0.04408664504902074
         ],
         [
-          18.392123725075212,
-          -11.55068548376817
+          17.413960820234788,
+          -0.049731692206232636
         ],
         [
-          18.568018765887718,
-          -11.027195741708118
+          17.60482627556807,
+          -0.05537552670958154
         ],
         [
-          18.743913806700224,
-          -10.519007297571763
+          17.79569173090135,
+          -0.059441440571524895
         ],
         [
-          18.91980884751273,
-          -10.026328772388245
+          17.98655718623463,
+          -0.06192239979003722
         ],
         [
-          19.13456671816614,
-          -9.44480659107644
+          18.17742264156791,
+          -0.06357650149394559
         ],
         [
-          19.349324588819552,
-          -8.885287324954643
+          18.368288096901193,
+          -0.06544390356634744
         ],
         [
-          19.564082459472964,
-          -8.3472117794703
+          18.559153552234473,
+          -0.06837506389057268
         ],
         [
-          19.778840330126375,
-          -7.829989098753652
+          18.750019007567754,
+          -0.07275416138131491
         ],
         [
-          19.993598200779786,
-          -7.333594105395839
+          18.940884462901035,
+          -0.07849163498977746
         ],
         [
-          20.208356071433197,
-          -6.8573995557234815
+          19.160009857916293,
+          -0.08627059877063059
         ],
         [
-          20.42311394208661,
-          -6.400971324728125
+          19.37913525293155,
+          -0.09472707117207013
         ],
         [
-          20.63787181274002,
-          -5.964398439476635
+          19.59826064794681,
+          -0.10344494144925676
         ],
         [
-          20.89524769419444,
-          -5.466410419299352
+          19.817386042962067,
+          -0.1123278346474964
         ],
         [
-          21.152623575648857,
-          -4.995565744797282
+          20.036511437977325,
+          -0.12155702153413112
         ],
         [
-          21.409999457103275,
-          -4.5515843678523025
+          20.343119545325326,
+          -0.13563624313938655
         ],
         [
-          21.667375338557694,
-          -4.1339853522371
+          20.649727652673327,
+          -0.15190639493405056
         ],
         [
-          21.924751220012112,
-          -3.7422923838893993
+          20.95633576002133,
+          -0.17109461638182738
         ],
         [
-          22.18212710146653,
-          -3.376208346224531
+          21.26294386736933,
+          -0.1936456456863686
         ],
         [
-          22.469164792221026,
-          -2.9979547500061825
+          21.56955197471733,
+          -0.21980573619313787
         ],
         [
-          22.75620248297552,
-          -2.6508213844124273
+          21.876160082065333,
+          -0.24976780251886221
         ],
         [
-          23.043240173730016,
-          -2.3345089542734425
+          22.182768189413334,
+          -0.2837789621176622
         ],
         [
-          23.33027786448451,
-          -2.0488339111931637
+          22.489376296761336,
+          -0.3221673181090122
         ],
         [
-          23.617315555239006,
-          -1.7936078972562626
+          22.837549744359293,
+          -0.37153244632230553
         ],
         [
-          23.9043532459935,
-          -1.568609659848781
+          23.18572319195725,
+          -0.42749349334387454
         ],
         [
-          24.191390936747997,
-          -1.373812338656636
+          23.53389663955521,
+          -0.4903441979175036
         ],
         [
-          24.419341542299552,
-          -1.2405553104032616
+          23.882070087153167,
+          -0.5601585627441072
         ],
         [
-          24.647292147851108,
-          -1.1262829836905075
+          24.230243534751125,
+          -0.6368721690542212
         ],
         [
-          24.875242753402663,
-          -1.0310053233053915
+          24.578416982349083,
+          -0.7204548798428934
         ],
         [
-          25.10319335895422,
-          -0.9546725069176881
+          24.92659042994704,
+          -0.8110474464825632
         ],
         [
-          25.331143964505774,
-          -0.8972921457316023
+          25.274763877545,
+          -0.908642010598461
         ],
         [
-          25.51872139829633,
-          -0.8643035528581029
+          25.544320922023445,
+          -0.9879911732682773
         ],
         [
-          25.706298832086883,
-          -0.84413374467517
+          25.81387796650189,
+          -1.0674812033172478
         ],
         [
-          25.884966627110675,
-          -0.8368129069244787
+          25.885098654500275,
+          -1.087736070642769
         ],
         [
           25.88571428571429,
-          -0.8368066039215499
+          -1.0879086194860383
         ],
         [
-          25.891724887187262,
-          -0.8367633897967671
+          25.891725275535915,
+          -1.0895785243386085
         ],
         [
-          25.897735488660235,
-          -0.8367332691929763
+          25.89773626535754,
+          -1.0912436396552025
         ],
         [
-          25.909756691606184,
-          -0.8367121115349322
+          25.90975824500079,
+          -1.0945829080365739
         ],
         [
-          25.921777894552132,
-          -0.8367433124184852
+          25.921780224644042,
+          -1.0979014897151114
         ],
         [
-          25.93379909749808,
-          -0.8368268620697876
+          25.933802204287293,
+          -1.1011982749729199
         ],
         [
-          26.05401112695755,
-          -0.8405393693690396
+          26.05402200071982,
+          -1.1327040441848149
         ],
         [
-          26.17422315641702,
-          -0.8494761248464836
+          26.174241797152344,
+          -1.1605727222805329
         ],
         [
-          26.29443518587649,
-          -0.8636278357588931
+          26.29446159358487,
+          -1.1831357138084821
         ],
         [
-          26.41464721533596,
-          -0.8829862565530179
+          26.414681390017396,
+          -1.1983392306526333
         ],
         [
-          26.590536971802308,
-          -0.9206797576505299
+          26.59056092778596,
+          -1.2020870823656695
         ],
         [
-          26.766426728268655,
-          -0.9694936276459378
+          26.76644046555452,
+          -1.1753777704527977
         ],
         [
-          26.942316484735002,
-          -1.0293774919766427
+          26.942320003323083,
+          -1.107041114995221
         ],
         [
-          27.11820624120135,
-          -1.1003413177508794
+          27.118199541091645,
+          -0.9843907955451772
         ],
         [
-          27.294095997667696,
-          -1.1824219326668008
+          27.294079078860207,
+          -0.793902847440366
         ],
         [
           27.38571428571429,
-          -1.2295821399618765
+          -0.6633119266814815
         ],
         [
-          27.403707346930535,
-          136.42308077850487
+          27.397496400123647,
+          0.0
         ],
         [
-          27.42170040814678,
-          136.0494866969061
+          27.409278514533003,
+          0.0
         ],
         [
-          27.457686530579274,
-          135.32131814622028
+          27.43284274335172,
+          0.0
         ],
         [
-          27.493672653011767,
-          134.62945224861141
+          27.456406972170438,
+          0.0
         ],
         [
-          27.52965877544426,
-          133.97247968870533
+          27.479971200989155,
+          0.0
         ],
         [
-          27.722358182653522,
-          130.99855441040748
+          27.597382226258187,
+          0.0
         ],
         [
-          27.915057589862784,
-          128.81213755904042
+          27.71479325152722,
+          0.0
         ],
         [
-          28.107756997072045,
-          127.27725282853037
+          27.83220427679625,
+          0.0
         ],
         [
-          28.300456404281306,
-          126.28475455444193
+          27.949615302065283,
+          0.0
         ],
         [
-          28.59167900359794,
-          125.61887319210607
+          28.127223521019754,
+          0.0
         ],
         [
-          28.882901602914572,
-          125.74801382957388
+          28.304831739974226,
+          0.0
         ],
         [
-          29.174124202231205,
-          126.48196630375557
+          28.482439958928698,
+          0.0
         ],
         [
-          29.465346801547838,
-          127.66566621401057
+          28.66004817788317,
+          0.0
         ],
         [
-          29.75656940086447,
-          129.17447045194447
+          28.83765639683764,
+          0.0
         ],
         [
-          30.25579246872472,
-          132.23213151215563
+          29.142165265211645,
+          0.0
         ],
         [
-          30.75501553658497,
-          135.55998168014142
+          29.44667413358565,
+          0.0
         ],
         [
-          31.25423860444522,
-          138.88227648814845
+          29.751183001959653,
+          0.0
         ],
         [
-          31.75346167230547,
-          142.02757113834159
+          30.055691870333657,
+          0.0
         ],
         [
-          32.25268474016572,
-          144.89480146939596
+          30.36020073870766,
+          0.0
         ],
         [
-          32.75190780802597,
-          147.43410886776286
+          30.664709607081665,
+          0.0
         ],
         [
-          33.48826295234864,
-          150.56359951138032
+          31.156066194366023,
+          0.0
         ],
         [
-          34.224618096671314,
-          153.00778813442466
+          31.64742278165038,
+          0.0
         ],
         [
-          34.96097324099399,
-          154.8663337129286
+          32.138779368934735,
+          0.0
         ],
         [
-          35.69732838531666,
-          156.25035407353369
+          32.63013595621909,
+          0.0
         ],
         [
-          36.43368352963933,
-          157.26407700702163
+          33.12149254350345,
+          0.0
         ],
         [
-          37.18331742700439,
-          158.0084673746564
+          33.61284913078781,
+          0.0
         ],
         [
-          37.93295132436945,
-          158.53814449206737
+          34.104205718072166,
+          0.0
         ],
         [
-          38.682585221734506,
-          158.91169600466384
+          34.59556230535652,
+          0.0
         ],
         [
-          39.432219119099564,
-          159.17326054161322
+          35.20520071519727,
+          0.0
         ],
         [
-          40.18185301646462,
-          159.35526858803203
+          35.81483912503802,
+          0.0
         ],
         [
-          41.55565606299418,
-          159.55592878900973
+          36.42447753487877,
+          0.0
         ],
         [
-          42.92945910952374,
-          159.65258263176446
+          37.03411594471952,
+          0.0
         ],
         [
-          44.3032621560533,
-          159.6988009204431
+          37.61030939313683,
+          0.0
         ],
         [
-          45.67706520258286,
-          159.72509564042218
+          38.186502841554145,
+          0.0
         ],
         [
-          47.05086824911242,
-          159.73784995235812
+          38.76269628997146,
+          0.0
         ],
         [
-          48.62323521534373,
-          159.74096676826662
+          39.33888973838877,
+          0.0
         ],
         [
-          50.19560218157505,
-          159.74294753267392
+          40.470199282925094,
+          0.0
         ],
         [
-          51.76796914780636,
-          159.74626063051778
+          41.601508827461416,
+          0.0
         ],
         [
-          53.340336114037676,
-          159.74427734839412
+          42.73281837199774,
+          0.0
         ],
         [
-          54.91270308026899,
-          159.7406436483203
+          43.86412791653406,
+          0.0
         ],
         [
-          55.86204148248446,
-          159.7408003821621
+          45.065546566682556,
+          0.0
         ],
         [
-          56.811379884699925,
-          159.7407270575116
+          46.26696521683105,
+          0.0
         ],
         [
-          57.76071828691539,
-          159.7399171517084
+          47.46838386697955,
+          0.0
         ],
         [
-          58.71005668913086,
-          159.73909828523148
+          48.0644116487991,
+          0.0
         ],
         [
-          59.701612671241776,
-          159.73828631505714
+          48.66043943061865,
+          0.0
         ],
         [
-          60.69316865335269,
-          159.73739044964265
+          49.2564672124382,
+          0.0
         ],
         [
-          61.68472463546361,
-          159.73644128102757
+          49.85016027085198,
+          0.0
         ],
         [
-          63.019700273431596,
-          159.73514832838896
+          50.44385332926576,
+          0.0
         ],
         [
-          64.35467591139958,
-          159.73385652189583
+          51.037546387679534,
+          0.0
         ],
         [
-          65.68965154936757,
-          159.73256843368208
+          52.22602215013901,
+          0.0
         ],
         [
-          67.66870000169779,
-          159.73066531630235
+          53.414497912598485,
+          0.0
         ],
         [
-          69.647748454028,
-          159.72877385194866
+          54.60297367505796,
+          0.0
         ],
         [
-          71.62679690635822,
-          159.72689423109958
+          55.78628196962012,
+          0.0
         ],
         [
-          73.60427163292789,
-          159.7250269667506
+          56.96959026418228,
+          0.0
         ],
         [
-          75.58174635949756,
-          159.72317083784225
+          58.15289855874444,
+          0.0
         ],
         [
-          77.55922108606723,
-          159.72132715473123
+          59.80914674127502,
+          0.0
         ],
         [
-          83.74360774187622,
-          159.71615251836107
+          61.465394923805604,
+          0.0
         ],
         [
-          89.92799439768521,
-          159.71707567667704
+          63.12164310633619,
+          0.0
         ],
         [
-          91.47409106163745,
-          159.71547669180052
+          67.96806599954927,
+          0.0
         ],
         [
-          93.0201877255897,
-          159.71012719800038
+          69.17967172285253,
+          0.0
         ],
         [
-          94.56628438954193,
-          159.70581167861852
+          71.60288316945908,
+          0.0
         ],
         [
-          95.55174469780209,
-          159.70464488806846
+          74.02609461606562,
+          0.0
         ],
         [
-          96.53720500606225,
-          159.7040539529443
+          76.44930606267216,
+          0.0
         ],
         [
-          97.52266531432241,
-          159.70334996839014
+          82.05653011294073,
+          0.0
         ],
         [
-          98.50866761324593,
-          159.70251945354332
+          87.6637541632093,
+          0.0
         ],
         [
-          104.229915181177,
-          159.69770688527544
+          93.27097821347787,
+          0.0
         ],
         [
-          109.95116274910808,
-          159.69285749872986
+          102.7701466845776,
+          0.0
         ],
         [
-          115.67241031703915,
-          159.68816478817996
+          112.26931515567732,
+          0.0
         ],
         [
-          123.80427445904986,
-          159.6816942558035
+          121.76848362677704,
+          0.0
         ],
         [
-          131.93613860106058,
-          159.67564985083905
+          131.26765209787678,
+          0.0
         ],
         [
-          140.0680027430713,
-          159.66968108344662
+          142.3439771582361,
+          0.0
         ],
         [
-          148.19986688508203,
-          159.66398011474814
+          153.42030221859542,
+          0.0
         ],
         [
-          158.3904761904762,
-          159.65687321660866
+          158.24761904761905,
+          0.0
         ],
         [
-          158.5093989588007,
-          159.6567862772514
+          158.36654057116988,
+          0.0
         ],
         [
-          158.62832172712518,
-          159.65669956219668
+          158.4854620947207,
+          0.0
         ],
         [
-          159.8904761904762,
-          159.65576632135605
+          159.74761904761905,
+          0.0
         ],
         [
-          159.89288732694692,
-          1576.5331797478216
+          159.74948515317416,
+          0.0
         ],
         [
-          159.89529846341765,
-          1556.9096998423545
+          159.75135125872927,
+          0.0
         ],
         [
-          159.90012073635913,
-          1518.561410916229
+          159.75508346983946,
+          0.0
         ],
         [
-          159.9049430093006,
-          1481.7178253670272
+          159.75881568094965,
+          0.0
         ],
         [
-          159.9097652822421,
-          1446.3012817445435
+          159.76254789205984,
+          0.0
         ],
         [
-          159.93243780659526,
-          1296.9305194681908
+          159.78008817979105,
+          0.0
         ],
         [
-          159.95511033094843,
-          1171.2563487229936
+          159.79762846752226,
+          0.0
         ],
         [
-          159.9777828553016,
-          1064.5482318279946
+          159.81516875525347,
+          0.0
         ],
         [
-          160.00045537965477,
-          973.183224990024
+          159.83270904298467,
+          0.0
         ],
         [
-          160.0346633693688,
-          858.3156820487155
+          159.85917311481012,
+          0.0
         ],
         [
-          160.0688713590828,
-          765.0118631092757
+          159.88563718663556,
+          0.0
         ],
         [
-          160.10307934879683,
-          688.2286581017147
+          159.912101258461,
+          0.0
         ],
         [
-          160.13728733851084,
-          624.2877502475501
+          159.93856533028645,
+          0.0
         ],
         [
-          160.17149532822486,
-          570.495051015212
+          159.9650294021119,
+          0.0
         ],
         [
-          160.23106728260558,
-          495.2866517475624
+          160.01112136384918,
+          0.0
         ],
         [
-          160.2906392369863,
-          437.4409733137288
+          160.05721332558647,
+          0.0
         ],
         [
-          160.350211191367,
-          392.0129580681056
+          160.10330528732376,
+          0.0
         ],
         [
-          160.40978314574772,
-          355.75608058328515
+          160.14939724906105,
+          0.0
         ],
         [
-          160.46935510012844,
-          326.40855197860856
+          160.19548921079834,
+          0.0
         ],
         [
-          160.52892705450915,
-          302.3603724306897
+          160.24158117253563,
+          0.0
         ],
         [
-          160.6259323588013,
-          271.6617330589863
+          160.3166327641328,
+          0.0
         ],
         [
-          160.72293766309343,
-          248.5677493497484
+          160.39168435572998,
+          0.0
         ],
         [
-          160.81994296738557,
-          230.86656963816625
+          160.46673594732715,
+          0.0
         ],
         [
-          160.9169482716777,
-          217.0949968855305
+          160.54178753892432,
+          0.0
         ],
         [
-          161.01395357596985,
-          206.24750832623832
+          160.6168391305215,
+          0.0
         ],
         [
-          161.110958880262,
-          197.61699810941786
+          160.69189072211867,
+          0.0
         ],
         [
-          161.26736304673776,
-          187.1326464066478
+          160.81292628958846,
+          0.0
         ],
         [
-          161.42376721321352,
-          179.65630471070284
+          160.93396185705825,
+          0.0
         ],
         [
-          161.5801713796893,
-          174.26547877048358
+          161.05499742452804,
+          0.0
         ],
         [
-          161.73657554616506,
-          170.34230905331447
+          161.17603299199783,
+          0.0
         ],
         [
-          161.89297971264082,
-          167.46540415137994
+          161.29706855946762,
+          0.0
         ],
         [
-          162.11653214894974,
-          164.61162621081698
+          161.46985652170034,
+          0.0
         ],
         [
-          162.34008458525867,
-          162.75902986705063
+          161.64264448393305,
+          0.0
         ],
         [
-          162.5636370215676,
-          161.54720551373606
+          161.81543244616577,
+          0.0
         ],
         [
-          162.7871894578765,
-          160.75002923028262
+          161.9882204083985,
+          0.0
         ],
         [
-          163.01074189418543,
-          160.22614499676084
+          162.1610083706312,
+          0.0
         ],
         [
-          163.3020518484637,
-          159.80329008988528
+          162.38610275126362,
+          0.0
         ],
         [
-          163.59336180274195,
-          159.55668161168558
+          162.61119713189603,
+          0.0
         ],
         [
-          163.88467175702021,
-          159.4104366361094
+          162.83629151252845,
+          0.0
         ],
         [
-          164.17598171129848,
-          159.32571545827088
+          163.06138589316086,
+          0.0
         ],
         [
-          164.4850936705858,
-          159.274138423045
+          163.3001953672972,
+          0.0
         ],
         [
-          164.79420562987312,
-          159.24676577968512
+          163.53900484143352,
+          0.0
         ],
         [
-          165.10331758916044,
-          159.23178999752233
+          163.77781431556986,
+          0.0
         ],
         [
-          165.4129391221861,
-          159.22297812332988
+          164.01699558831393,
+          0.0
         ],
         [
-          165.72256065521174,
-          159.21777103996175
+          164.256176861058,
+          0.0
         ],
         [
-          166.03218218823739,
-          159.2147778177064
+          164.49535813380209,
+          0.0
         ],
         [
-          166.34184757413777,
-          159.2130756408003
+          164.73455176863084,
+          0.0
         ],
         [
-          167.93141144685217,
-          159.20943857707618
+          165.96552936083825,
+          0.0
         ],
         [
-          169.52097531956656,
-          159.20986984974738
+          167.19650695304566,
+          0.0
         ],
         [
-          171.11053919228095,
-          159.21044934534726
+          168.42748454525307,
+          0.0
         ],
         [
-          175.76088994831585,
-          159.210613890983
+          172.0340398974043,
+          0.0
         ],
         [
-          180.41124070435075,
-          159.2104957486611
+          175.64059524955556,
+          0.0
         ],
         [
-          185.06159146038564,
-          159.21037675431043
+          179.2471506017068,
+          0.0
         ],
         [
-          202.12571753179242,
-          159.20999661861268
+          196.48491242496618,
+          0.0
         ],
         [
-          219.1898436031992,
-          159.20962058442544
+          213.72267424822556,
+          0.0
         ],
         [
-          236.25396967460597,
-          159.2092446967184
+          230.96043607148493,
+          0.0
         ],
         [
-          261.9195710352043,
-          159.2086446099042
+          256.216460721343,
+          0.0
         ],
         [
-          287.5851723958026,
-          159.20802994599984
+          281.4724853712011,
+          0.0
         ],
         [
-          298.2290954115797,
-          159.20774582213542
+          298.21839993404154,
+          0.0
         ]
       ],
-      "title": "R3 (N) x Time (S)",
+      "title": "M1 (Nm) x Time (S)",
       "inputs": [
         "Time (s)"
       ],
       "outputs": [
-        "R3 (N)"
+        "M1 (Nm)"
       ],
-      "interpolation": "spline",
+      "interpolation": "linear",
       "extrapolation": "zero",
       "signature": {
         "module": "rocketpy.mathutils.function",
-        "name": "Function"
+        "name": "Function",
+        "hash": 8532846655817
       }
     },
-    "M1": {
+    "M2": {
       "source": [
         [
           0.0,
           0.0
         ],
         [
-          0.0014095582940420635,
+          0.00140955829402094,
           0.0
         ],
         [
-          0.002819116588084127,
+          0.00281911658804188,
           0.0
         ],
         [
-          0.005638233176168254,
+          0.00563823317608376,
           0.0
         ],
         [
-          0.008457349764252381,
+          0.00845734976412564,
           0.0
         ],
         [
-          0.011276466352336508,
+          0.01127646635216752,
           0.0
         ],
         [
-          0.03946763223317778,
+          0.039467632232586314,
           0.0
         ],
         [
-          0.04085528032083424,
+          0.04085528032029989,
           0.0
         ],
         [
-          0.042242928408490706,
+          0.04224292840801347,
           0.0
         ],
         [
-          0.045018224583803626,
+          0.04501822458344063,
           0.0
         ],
         [
-          0.047793520759116546,
+          0.047793520758867794,
           0.0
         ],
         [
-          0.05056881693442947,
+          0.050568816934294956,
           0.0
         ],
         [
-          0.051535065794346184,
+          0.051535065794208836,
           0.0
         ],
         [
-          0.0525013146542629,
+          0.052501314654122715,
           0.0
         ],
         [
-          0.05443381237409633,
+          0.05443381237395048,
           0.0
         ],
         [
-          0.056366310093929756,
+          0.056366310093778245,
           0.0
         ],
         [
-          0.05829880781376318,
+          0.05829880781360601,
           0.0
         ],
         [
-          0.06066778422868188,
+          0.06066778422864502,
           0.0
         ],
         [
-          0.06303676064360057,
+          0.06303676064368403,
           0.0
         ],
         [
-          0.06540573705851926,
+          0.06540573705872305,
           0.0
         ],
         [
-          0.08909550120770625,
+          0.08909550120911316,
           0.0
         ],
         [
-          0.09280001741842829,
+          0.09280001741983737,
           0.0
         ],
         [
-          0.09574786203389758,
+          0.09574786203637055,
           0.0
         ],
         [
-          0.09869570664936687,
+          0.09869570665290373,
           0.0
         ],
         [
-          0.10099207719472714,
+          0.10099207719695144,
           0.0
         ],
         [
-          0.1032884477400874,
+          0.10328844774099916,
           0.0
         ],
         [
-          0.10558481828544766,
+          0.10558481828504687,
           0.0
         ],
         [
-          0.11017755937616817,
+          0.1101775593731423,
           0.0
         ],
         [
-          0.11477030046688869,
+          0.11477030046123773,
           0.0
         ],
         [
-          0.1193630415576092,
+          0.11936304154933317,
           0.0
         ],
         [
-          0.13127045763130013,
+          0.1312706469438581,
           0.0
         ],
         [
-          0.14317787370499105,
+          0.14317825233838302,
           0.0
         ],
         [
-          0.14995992644651876,
+          0.1499601229088181,
           0.0
         ],
         [
-          0.1542011028620784,
+          0.1542012180187087,
           0.0
         ],
         [
-          0.15844227927763802,
+          0.1584423131285993,
           0.0
         ],
         [
-          0.16268345569319764,
+          0.1626834082384899,
           0.0
         ],
         [
-          0.1711658085243169,
+          0.1711655984582711,
           0.0
         ],
         [
-          0.17964816135543615,
+          0.17964778867805228,
           0.0
         ],
         [
-          0.1881305141865554,
+          0.18812997889783348,
           0.0
         ],
         [
-          0.19446574773727407,
+          0.19446537171097383,
           0.0
         ],
         [
-          0.20080098128799273,
+          0.20080076452411422,
           0.0
         ],
         [
-          0.2056611859339936,
+          0.20566109450366143,
           0.0
         ],
         [
-          0.21052139057999447,
+          0.21052142448320865,
           0.0
         ],
         [
-          0.21538159522599534,
+          0.21538175446275587,
           0.0
         ],
         [
-          0.22510200451799706,
+          0.22510241442185028,
           0.0
         ],
         [
-          0.23482241380999877,
+          0.23482307438094469,
           0.0
         ],
         [
-          0.24454282310200048,
+          0.2445437343400391,
           0.0
         ],
         [
-          0.2542632323940022,
+          0.2542643942991335,
           0.0
         ],
         [
-          0.35146732531401936,
+          0.3514709938900776,
           0.0
         ],
         [
-          0.3632465986442917,
+          0.36324670161934375,
           0.0
         ],
         [
-          0.3693545968582991,
-          -0.0022231949874859528
-        ],
-        [
-          0.37546259507230645,
-          -0.004536343420118031
+          0.3693547037882063,
+          -7.888254925022255e-06
         ],
         [
-          0.3876785915003212,
-          -0.009435329171162353
+          0.3754627059570688,
+          -1.6262349494141514e-05
         ],
         [
-          0.39989458792833593,
-          -0.014692899386632107
+          0.3876787102947939,
+          -3.434590783529747e-05
         ],
         [
-          0.4121105843563507,
-          -0.020307137404838936
+          0.39989471463251897,
+          -5.4479355571729034e-05
         ],
         [
-          0.4714932108541475,
-          -0.05253784389604779
+          0.41211071897024404,
+          -7.6739853147689e-05
         ],
         [
-          0.5078257800637102,
-          -0.0761358314882023
+          0.47147904178591876,
+          -0.00021742321414879224
         ],
         [
-          0.5343429255049618,
-          -0.09504197946534962
+          0.5078212847273655,
+          -0.0003324443712678407
         ],
         [
-          0.5608600709462134,
-          -0.11520129750364802
+          0.5343387025617514,
+          -0.00043109072760266537
         ],
         [
-          0.587377216387465,
-          -0.1364383254770577
+          0.5608561203961373,
+          -0.0005423771485021083
         ],
         [
-          0.6404115072699682,
-          -0.18127966744847313
+          0.5873735382305232,
+          -0.0006663271139874547
         ],
         [
-          0.6934457981524714,
-          -0.22733104343041088
+          0.6404083738992948,
+          -0.0009512955374871733
         ],
         [
-          0.7464800890349746,
-          -0.2716596702247884
+          0.6934432095680665,
+          -0.0012808157375326244
         ],
         [
-          0.7995143799174779,
-          -0.3105521746219474
+          0.7464780452368381,
+          -0.0016445180620165319
         ],
         [
-          0.8131556786423583,
-          -0.3191475834901906
+          0.7995128809056098,
+          -0.002025431479544379
         ],
         [
-          0.8267969773672387,
-          -0.3270102957312917
+          0.813164227469089,
+          -0.0021234531808029815
         ],
         [
-          0.8404382760921191,
-          -0.3340564781091174
+          0.8268155740325682,
+          -0.0022205423781387176
         ],
         [
-          0.8773817713324279,
-          -0.34837847746703887
+          0.8404669205960474,
+          -0.002316169991588014
         ],
         [
-          0.9143252665727367,
-          -0.3543601207948299
+          0.8775732859954444,
+          -0.002564044215644966
         ],
         [
-          0.9512687618130455,
-          -0.35027052357262145
+          0.9146796513948413,
+          -0.002784449129391498
         ],
         [
-          0.9671044469204755,
-          -0.3449946471710179
+          0.9517860167942382,
+          -0.0029634716351576813
         ],
         [
-          0.9987682629763311,
-          -0.3276417768394627
+          0.9674325642455079,
+          -0.0030228932350997743
         ],
         [
-          1.0182059593067265,
-          -0.31209375511435633
+          0.9990075872778321,
+          -0.0031077862850372746
         ],
         [
-          1.037643655637122,
-          -0.29264725758360977
+          1.0183793592598076,
+          -0.0031329982348147637
         ],
         [
-          1.0570813519675175,
-          -0.2691960336323387
+          1.037751131241783,
+          -0.0031351232423193964
         ],
         [
-          1.0878522163238507,
-          -0.2239231681320013
+          1.0571229032237586,
+          -0.0031120840724772753
         ],
         [
-          1.1186230806801838,
-          -0.16860849915688092
+          1.0878788324799102,
+          -0.003019871968277672
         ],
         [
-          1.1439344065815038,
-          -0.11574155194859337
+          1.118634761736062,
+          -0.0028533463726268414
         ],
         [
-          1.1692457324828238,
-          -0.056732695365654534
+          1.1439443303803107,
+          -0.0026565374954055903
         ],
         [
-          1.1945570583841438,
-          0.0077534568852332675
+          1.1692538990245596,
+          -0.0024040941694561434
         ],
         [
-          1.2316667865519533,
-          0.11074797759281538
+          1.1945634676688084,
+          -0.0020955984837783843
         ],
         [
-          1.2687765147197627,
-          0.22021930097653386
+          1.2316568052102488,
+          -0.001541945591087042
         ],
         [
-          1.3058862428875722,
-          0.3310716129256581
+          1.2687501427516892,
+          -0.0008773219793868033
         ],
         [
-          1.3429959710553816,
-          0.4374419355401356
+          1.3058434802931296,
+          -0.0001212274552371659
         ],
         [
-          1.4022433435144068,
-          0.5821618429470239
+          1.34293681783457,
+          0.0006987446828387549
         ],
         [
-          1.447124093183637,
-          0.6559050663643082
+          1.4021386812930872,
+          0.0020472908043482506
         ],
         [
-          1.4920048428528674,
-          0.6857723822294219
+          1.447031703480718,
+          0.0030022673742072783
         ],
         [
-          1.5261259080406766,
-          0.6727718506374125
+          1.491924725668349,
+          0.0037932475666557046
         ],
         [
-          1.5602469732284858,
-          0.6261735967356039
+          1.5260726318617992,
+          0.004220989485087681
         ],
         [
-          1.594368038416295,
-          0.5455388846898319
+          1.5602205380552494,
+          0.004454148065279086
         ],
         [
-          1.6284891036041043,
-          0.43266394427873545
+          1.5943684442486996,
+          0.004460689773208779
         ],
         [
-          1.6626101687919135,
-          0.2918437251013374
+          1.6285163504421498,
+          0.004219605490948686
         ],
         [
-          1.6967312339797227,
-          0.12997012170362995
+          1.6626642566356,
+          0.0037245169848528614
         ],
         [
-          1.730852299167532,
-          -0.04360039129475799
+          1.6968121628290502,
+          0.0029867803357866104
         ],
         [
-          1.770204581699234,
-          -0.2433461458189568
+          1.7309600690225004,
+          0.002037522445585231
         ],
         [
-          1.809556864230936,
-          -0.4235547943918102
+          1.770308643380365,
+          0.0007477299327295021
         ],
         [
-          1.8489091467626382,
-          -0.5636515230001545
+          1.8096572177382295,
+          -0.0006463179856152628
         ],
         [
-          1.8882614292943403,
-          -0.6452439393623287
+          1.849005792096094,
+          -0.0020047404828939155
         ],
         [
-          1.9276137118260424,
-          -0.6549077426112162
+          1.8883543664539586,
+          -0.0031750394587012664
         ],
         [
-          1.9669659943577444,
-          -0.586645908307224
+          1.9277029408118231,
+          -0.004010659838485076
         ],
         [
-          2.0063182768894463,
-          -0.44381233446445745
+          1.9670515151696877,
+          -0.004390045395621801
         ],
         [
-          2.0456705594211484,
-          -0.24009780728105112
+          2.006400089527552,
+          -0.004236430151069033
         ],
         [
-          2.0850228419528505,
-          0.0008519206663595846
+          2.0457486638854165,
+          -0.0035357167062245523
         ],
         [
-          2.1243751244845526,
-          0.24757953428829194
+          2.085097238243281,
+          -0.0023486062682985184
         ],
         [
-          2.1637274070162547,
-          0.46469539255923586
+          2.124445812601145,
+          -0.0008124959347386197
         ],
         [
-          2.2030796895479567,
-          0.61810545769648
+          2.1637943869590095,
+          0.0008694795028907458
         ],
         [
-          2.242431972079659,
-          0.6808935884560938
+          2.203142961316874,
+          0.002452619945018205
         ],
         [
-          2.281784254611361,
-          0.638712140902395
+          2.242491535674738,
+          0.003686239368663954
         ],
         [
-          2.321136537143063,
-          0.4941434785937243
+          2.2818401100326025,
+          0.004354531178006892
         ],
         [
-          2.360488819674765,
-          0.26831497603038623
+          2.3211886843904668,
+          0.004321264158091028
         ],
         [
-          2.399841102206467,
-          -0.001000088145808608
+          2.360537258748331,
+          0.0035651624331626205
         ],
         [
-          2.4391933847381693,
-          -0.2649193093887121
+          2.3998858331061954,
+          0.0021973427781468123
         ],
         [
-          2.4785456672698714,
-          -0.4724443596139253
+          2.4392344074640597,
+          0.0004540235253675873
         ],
         [
-          2.5178979498015734,
-          -0.5808490423575348
+          2.478582981821924,
+          -0.0013392914827014741
         ],
         [
-          2.5572502323332755,
-          -0.5656244417525497
+          2.5179315561797884,
+          -0.002826697620228355
         ],
         [
-          2.5966025148649776,
-          -0.4274951134968312
+          2.5572801305376527,
+          -0.003695271835905723
         ],
         [
-          2.6359547973966797,
-          -0.1945131369463891
+          2.596628704895517,
+          -0.00374767310441912
         ],
         [
-          2.675307079928382,
-          0.08203430094349443
+          2.6359772792533813,
+          -0.0029570441427159864
         ],
         [
-          2.714659362460084,
-          0.3379146414659814
+          2.6753258536112456,
+          -0.0014884002650800876
         ],
         [
-          2.7466638251883717,
-          0.4859278519059856
+          2.71467442796911,
+          0.00032436286133069765
         ],
         [
-          2.7786682879166595,
-          0.5524496614101442
+          2.746682540487563,
+          0.0017463180435228212
         ],
         [
-          2.8106727506449474,
-          0.5256644461948079
+          2.778690653006016,
+          0.0028635519266192073
         ],
         [
-          2.842677213373235,
-          0.40992746785350637
+          2.810698765524469,
+          0.003482425375582234
         ],
         [
-          2.874681676101523,
-          0.2258215927457547
+          2.842706878042922,
+          0.003492648178328539
         ],
         [
-          2.9108918137851214,
-          -0.022594522103059084
+          2.874714990561375,
+          0.0028915006942858124
         ],
         [
-          2.9402847513530936,
-          -0.21445552546316826
+          2.9109277644238576,
+          0.001615769656440374
         ],
         [
-          2.9637983886571173,
-          -0.33679827030749176
+          2.940339896156497,
+          0.00031881574645687566
         ],
         [
-          2.987312025961141,
-          -0.417996311523791
+          2.9638563968017557,
+          -0.000719199899808991
         ],
         [
-          2.9914721939592726,
-          -0.42741221612673563
+          2.9873728974470146,
+          -0.0016363156919090558
         ],
         [
-          2.995632361957404,
-          -0.43527411115215386
+          2.991532758872659,
+          -0.0017781554158743246
         ],
         [
-          2.9997925299555357,
-          -0.4415662199379209
+          2.995692620298303,
+          -0.0019127415507539628
         ],
         [
-          3.0010806713261253,
-          -0.4431193008743576
+          2.999852481723947,
+          -0.0020397069880719937
         ],
         [
-          3.002368812696715,
-          -0.4445194272222692
+          3.0011406359017885,
+          -0.0020771265100661693
         ],
         [
-          3.0049450954378942,
-          -0.4467105704476738
+          3.00242879007963,
+          -0.0021137539984486305
         ],
         [
-          3.0075213781790735,
-          -0.44828917027839843
+          3.0050050984353125,
+          -0.0021838930617441243
         ],
         [
-          3.031179520120233,
-          -0.43815897775283863
+          3.007581406790995,
+          -0.0022507022133625198
         ],
         [
-          3.0548376620613924,
-          -0.38170345213950496
+          3.0312400452524226,
+          -0.002709834832296025
         ],
         [
-          3.078495804002552,
-          -0.28688385582498444
+          3.05489868371385,
+          -0.0028572871708685927
         ],
         [
-          3.1021539459437113,
-          -0.16520899169523712
+          3.0785573221752776,
+          -0.00269450777042038
         ],
         [
-          3.1205915242496687,
-          -0.05969841560192354
+          3.102215960636705,
+          -0.0022530558412471036
         ],
         [
-          3.139029102555626,
-          0.04669688117851285
+          3.120664542586555,
+          -0.0017477415934925083
         ],
         [
-          3.1574666808615834,
-          0.14668374772561316
+          3.139113124536405,
+          -0.0011421609624225454
         ],
         [
-          3.1943418374734978,
-          0.3046894331661444
+          3.1575617064862547,
+          -0.0004794343084058828
         ],
         [
-          3.223214302746968,
-          0.3669366026612694
+          3.194458870385954,
+          0.0008490921918158339
         ],
         [
-          3.252086768020438,
-          0.36396195212094984
+          3.2233916577517485,
+          0.0017000207804994795
         ],
         [
-          3.2809592332939084,
-          0.2991474555739699
+          3.252324445117543,
+          0.002221124542983921
         ],
         [
-          3.2861061530217075,
-          0.28165769758665604
+          3.2812572324833376,
+          0.0023358536907160817
         ],
         [
-          3.2912530727495066,
-          0.26276829321060546
+          3.2864042093564865,
+          0.002309555556370569
         ],
         [
-          3.2963999924773058,
-          0.24262107339104808
+          3.2915511862296354,
+          0.002270265211067633
         ],
         [
-          3.3042992470019175,
-          0.20963562570409566
+          3.2966981631027843,
+          0.002218480752143731
         ],
         [
-          3.312198501526529,
-          0.17453647378325626
+          3.3044731976480057,
+          0.0021179581511568298
         ],
         [
-          3.320097756051141,
-          0.13781909635680925
+          3.312248232193227,
+          0.0019921328611069576
         ],
         [
-          3.329990894740742,
-          0.09042714209477326
+          3.3200232667384486,
+          0.0018430619371147818
         ],
         [
-          3.339884033430343,
-          0.04235230761600213
+          3.3299608976332786,
+          0.0016229053971461322
         ],
         [
-          3.349777172119944,
-          -0.005408867991396591
+          3.3398985285281086,
+          0.0013742572057085368
         ],
         [
-          3.3683253555356067,
-          -0.08985289930228271
+          3.3498361594229387,
+          0.001102938382789897
         ],
         [
-          3.3868735389512694,
-          -0.16397572451373071
+          3.3684063767347974,
+          0.0005635894718931849
         ],
         [
-          3.4020443640890705,
-          -0.21414377467658222
+          3.386976594046656,
+          1.0174708582423586e-05
         ],
         [
-          3.4113407650123997,
-          -0.23927154222642733
+          3.4020328166662903,
+          -0.0004255447221580503
         ],
         [
-          3.420637165935729,
-          -0.2595117130798713
+          3.4113057466050263,
+          -0.0006797233415644665
         ],
         [
-          3.429933566859058,
-          -0.27458842127529237
+          3.4205786765437622,
+          -0.0009163490021247946
         ],
         [
-          3.446308281894537,
-          -0.2881967800785321
+          3.429851606482498,
+          -0.0011313025035742377
         ],
         [
-          3.4626829969300164,
-          -0.285571232167533
+          3.4462125806335115,
+          -0.0014454617771873552
         ],
         [
-          3.4790577119654955,
-          -0.2676270929496893
+          3.462573554784525,
+          -0.0016685144603426584
         ],
         [
-          3.5098113349838638,
-          -0.20155280499933037
+          3.4789345289355382,
+          -0.001793049172999825
         ],
         [
-          3.534175816549051,
-          -0.12640941471307432
+          3.5099101021393686,
+          -0.0017625253511395315
         ],
         [
-          3.558540298114238,
-          -0.0415876046163228
+          3.5343946919875657,
+          -0.001517410216794868
         ],
         [
-          3.582904779679425,
-          0.0429053831275437
+          3.558879281835763,
+          -0.0011173144539182323
         ],
         [
-          3.615075076269808,
-          0.1413294186978854
+          3.58336387168396,
+          -0.0006166912926180877
         ],
         [
-          3.6472453728601906,
-          0.2060042042566747
+          3.6154318916074843,
+          0.00010878748525934307
         ],
         [
-          3.6794156694505733,
-          0.22401390721032166
+          3.6474999115310087,
+          0.0007699089984313205
         ],
         [
-          3.711585966040956,
-          0.19406206030153295
+          3.679567931454533,
+          0.0012288227947900802
         ],
         [
-          3.7510748617223286,
-          0.1043697747856537
+          3.7116359513780575,
+          0.0014007379107836677
         ],
         [
-          3.790563757403701,
-          -0.014064948758362575
+          3.750677226849746,
+          0.0011931108509860224
         ],
         [
-          3.830052653085074,
-          -0.1199094616701668
+          3.789718502321435,
+          0.0006141574121690328
         ],
         [
-          3.862940498739986,
-          -0.1724645700481116
+          3.8287597777931235,
+          -0.00012197928097847327
         ],
         [
-          3.895828344394898,
-          -0.18281646448242797
+          3.867801053264812,
+          -0.0007659082645350163
         ],
         [
-          3.901564462162616,
-          -0.1803871864000965
+          3.906842328736501,
+          -0.0011245414073269761
         ],
         [
-          3.9073005799303346,
-          -0.17683780256018428
+          3.9127975041938576,
+          -0.0011461131565895025
         ],
         [
-          3.913036697698053,
-          -0.17220329796987527
+          3.9187526796512144,
+          -0.0011593342818409691
         ],
         [
-          3.924489906398398,
-          -0.1599708804705841
+          3.9247078551085712,
+          -0.001164355026657285
         ],
         [
-          3.935943115098743,
-          -0.1441090286403471
+          3.9366182060232844,
+          -0.0011507301579077082
         ],
         [
-          3.947396323799088,
-          -0.12513868318544258
+          3.9485285569379975,
+          -0.0011068686649397218
         ],
         [
-          3.975516795322242,
-          -0.070829518728931
+          3.9604389078527107,
+          -0.0010350724441858007
         ],
         [
-          4.003637266845396,
-          -0.011383534937210033
+          3.9894733064604,
+          -0.0007621065648585178
         ],
         [
-          4.03175773836855,
-          0.0447462358022386
+          4.018507705068089,
+          -0.0003928911357962469
         ],
         [
-          4.071718134752553,
-          0.10733913486182929
+          4.047542103675778,
+          8.778135873386628e-06
         ],
         [
-          4.111678531136556,
-          0.1349948211331412
+          4.0765765022834675,
+          0.00037831221798779275
         ],
         [
-          4.151638927520558,
-          0.12174103188280527
+          4.119155795005119,
+          0.0007561872708732721
         ],
         [
-          4.191599323904561,
-          0.07446210223748383
+          4.16173508772677,
+          0.0008527051929578331
         ],
         [
-          4.247720558129715,
-          -0.020360322084537134
+          4.1691207712068685,
+          0.0008351837819412818
         ],
         [
-          4.293788946145795,
-          -0.08933808870087195
+          4.176506454686967,
+          0.0008086674213360499
         ],
         [
-          4.3319865166419085,
-          -0.11710839126890074
+          4.1838921381670655,
+          0.0007737643493694997
         ],
         [
-          4.370184087138022,
-          -0.1115361354080488
+          4.1986635051272625,
+          0.0006831329242231608
         ],
         [
-          4.408381657634136,
-          -0.0774890144103976
+          4.2134348720874595,
+          0.0005684613705988888
         ],
         [
-          4.44657922813025,
-          -0.027030915293126942
+          4.2282062390476565,
+          0.0004355941658080887
         ],
         [
-          4.484776798626363,
-          0.024972703014570663
+          4.264323210631898,
+          6.531601614929408e-05
         ],
         [
-          4.527459427885128,
-          0.06870423075027202
+          4.300440182216139,
+          -0.00030045829909054094
         ],
         [
-          4.570142057143892,
-          0.0856189773466094
+          4.33655715380038,
+          -0.0005814056188608078
         ],
         [
-          4.612824686402656,
-          0.07292263344196348
+          4.372674125384622,
+          -0.0007225201694849859
         ],
         [
-          4.655507315661421,
-          0.03745640591713053
+          4.416044435312633,
+          -0.0006759558140844481
         ],
         [
-          4.698189944920185,
-          -0.007589219507651616
+          4.459414745240645,
+          -0.0004225716745080016
         ],
         [
-          4.752240597633832,
-          -0.0566312490717797
+          4.502785055168657,
+          -6.203691787583861e-05
         ],
         [
-          4.806291250347479,
-          -0.07610621165091236
+          4.546155365096668,
+          0.0002766382955541346
         ],
         [
-          4.8603419030611255,
-          -0.05923507984710205
+          4.58952567502468,
+          0.000482078510126716
         ],
         [
-          4.914392555774772,
-          -0.016916338502481795
+          4.632895984952691,
+          0.0004976328475188523
         ],
         [
-          4.968443208488419,
-          0.02886741259534304
+          4.676266294880703,
+          0.0003340157185773257
         ],
         [
-          5.022493861202066,
-          0.05628544045779381
+          4.719636604808715,
+          6.105899204906736e-05
         ],
         [
-          5.076544513915713,
-          0.05383589507804562
+          4.768224902129621,
+          -0.0002550859912978894
         ],
         [
-          5.13059516662936,
-          0.02478891319774186
+          4.816813199450527,
+          -0.00046254307834189693
         ],
         [
-          5.1846458193430065,
-          -0.015611758175755372
+          4.865401496771433,
+          -0.0004920965775911438
         ],
         [
-          5.238696472056653,
-          -0.04818946257215041
+          4.913989794092339,
+          -0.0003493854020170839
         ],
         [
-          5.2927471247703,
-          -0.05888782418199659
+          4.962578091413246,
+          -0.00010442190201171157
         ],
         [
-          5.342460668455986,
-          -0.04723647048186207
+          5.016300880486902,
+          0.0001844656767860096
         ],
         [
-          5.392174212141671,
-          -0.021143195736065698
+          5.070023669560559,
+          0.00037704401818485964
         ],
         [
-          5.441887755827357,
-          0.009397372905325607
+          5.123746458634216,
+          0.0005006103449258384
         ],
         [
-          5.491601299513042,
-          0.033934776732122925
+          5.177469247707872,
+          0.00040015643444729024
         ],
         [
-          5.554603109165186,
-          0.04586912941072445
+          5.219601255563254,
+          0.0005243370868282909
         ],
         [
-          5.617604918817331,
-          0.03311679668621007
+          5.261733263418636,
+          0.0007680076499035459
         ],
         [
-          5.6677507107483684,
-          0.00926222055030073
+          5.3038652712740175,
+          0.000928506862974032
         ],
         [
-          5.717896502679406,
-          -0.017831682990823272
+          5.345997279129399,
+          0.0008543875967079979
         ],
         [
-          5.768042294610444,
-          -0.039241022824615196
+          5.388129286984781,
+          0.0005195550947696361
         ],
         [
-          5.818188086541482,
-          -0.04826523912411024
+          5.438594166103664,
+          -6.423305094243638e-05
         ],
         [
-          5.878315251829882,
-          -0.04031099941818993
+          5.489059045222548,
+          -0.0005811954530070529
         ],
         [
-          5.928299499698518,
-          -0.020874998863515876
+          5.539523924341431,
+          -0.0008056443940883322
         ],
         [
-          5.978283747567154,
-          0.0029397871018098654
+          5.589988803460314,
+          -0.000682078663158287
         ],
         [
-          6.02826799543579,
-          0.02332409652814414
+          5.6404536825791975,
+          -0.0003275056981821593
         ],
         [
-          6.078252243304426,
-          0.034014439932540434
+          5.690918561698081,
+          6.866063978784283e-05
         ],
         [
-          6.14293081584079,
-          0.030478538613051095
+          5.741383440816964,
+          0.00035487632481047936
         ],
         [
-          6.196765840796611,
-          0.014363837814618603
+          5.7918483199358475,
+          0.000464137774700914
         ],
         [
-          6.250600865752432,
-          -0.007293715439235557
+          5.842313199054731,
+          0.0003999756621189271
         ],
         [
-          6.304435890708253,
-          -0.02721153770387981
+          5.900175444574162,
+          0.00016934717455169604
         ],
         [
-          6.3582709156640735,
-          -0.03940867946664414
+          5.958037690093594,
+          -0.00012517732075971824
         ],
         [
-          6.433461438883678,
-          -0.039027691766406
+          6.015899935613025,
+          -0.00036352435166985
         ],
         [
-          6.493499513622796,
-          -0.02443060228746495
+          6.073762181132457,
+          -0.0004561327412594073
         ],
         [
-          6.553537588361913,
-          -0.003627267597132708
+          6.1316244266518884,
+          -0.00037920350855596063
         ],
         [
-          6.613575663101031,
-          0.015462777357809553
+          6.18948667217132,
+          -0.0001802344863091757
         ],
         [
-          6.6736137378401486,
-          0.026151808347455164
+          6.2473489176907515,
+          4.770924050515393e-05
         ],
         [
-          6.752474107792829,
-          0.023524972465042215
+          6.305211163210183,
+          0.00020949984474270388
         ],
         [
-          6.813959694855546,
-          0.009247208866807001
+          6.374869724777001,
+          0.00025009626231803296
         ],
         [
-          6.875445281918263,
-          -0.009845789589518622
+          6.44452828634382,
+          0.0001224550369314935
         ],
         [
-          6.93693086898098,
-          -0.02682625288196737
+          6.514186847910638,
+          -9.293205440561282e-05
         ],
         [
-          6.998416456043697,
-          -0.03567487646655816
+          6.583845409477457,
+          -0.00028292235867200693
         ],
         [
-          7.079711027784927,
-          -0.031343875382162364
+          6.653503971044275,
+          -0.0003573592466837726
         ],
         [
-          7.1413765714336215,
-          -0.01714444042267764
+          6.723162532611093,
+          -0.00028871185404484925
         ],
         [
-          7.203042115082316,
-          0.0007036238445459822
+          6.792821094177912,
+          -0.00011871463558120248
         ],
         [
-          7.264707658731011,
-          0.01602025484037664
+          6.856149583247434,
+          4.11106189717647e-05
         ],
         [
-          7.326373202379705,
-          0.02361475920872127
+          6.919478072316956,
+          0.00014693880164136602
         ],
         [
-          7.4088916340702395,
-          0.018152556297407953
+          6.982806561386478,
+          0.00017096778477261772
         ],
         [
-          7.471438984396619,
-          0.003156317036137106
+          7.046135050456,
+          0.00011600054438204205
         ],
         [
-          7.533986334722999,
-          -0.015284916169103935
+          7.109463539525522,
+          9.132622773182003e-06
         ],
         [
-          7.596533685049379,
-          -0.0295947537896184
+          7.172792028595044,
+          -0.00011031929800004543
         ],
         [
-          7.659081035375759,
-          -0.03265965386625877
+          7.236120517664566,
+          -0.00020467514129935771
         ],
         [
-          7.748666795076123,
-          -0.011547567858850874
+          7.299449006734088,
+          -0.0002489717256724973
         ],
         [
-          7.759103537845691,
-          -0.007352368377100099
+          7.36277749580361,
+          -0.00023649722008822478
         ],
         [
-          7.769540280615259,
-          -0.0032552830975776104
+          7.441907419493829,
+          -0.00015900430795529746
         ],
         [
-          7.779977023384827,
-          0.0007351876096808735
+          7.521037343184047,
+          -6.092151812616396e-05
         ],
         [
-          7.800850508923962,
-          0.00823904596170661
+          7.600167266874266,
+          1.1598083511112989e-05
         ],
         [
-          7.821723994463097,
-          0.014928899051460331
+          7.696303025687341,
+          3.978643522359023e-05
         ],
         [
-          7.842597480002232,
-          0.02059635011615339
+          7.7924387845004155,
+          -1.0641467380766937e-05
         ],
         [
-          7.900172892552435,
-          0.030013205773131144
+          7.88857454331349,
+          -0.00010368807253288616
         ],
         [
-          7.957748305102638,
-          0.029298167166567076
+          7.984710302126565,
+          -0.00017746313555988351
         ],
         [
-          8.01532371765284,
-          0.019333505513055006
+          8.08084606093964,
+          -0.00018867284541067416
         ],
         [
-          8.072899130203044,
-          0.0034387349081336366
+          8.176981819752715,
+          -0.00013668517184757252
         ],
         [
-          8.14886572486838,
-          -0.019023070268864475
+          8.27311757856579,
+          -5.8642254902393056e-05
         ],
         [
-          8.224832319533714,
-          -0.034443401482277675
+          8.374791072592975,
+          -3.845254757904593e-06
         ],
         [
-          8.30079891419905,
-          -0.03648889495298911
+          8.47646456662016,
+          1.279680452230471e-05
         ],
         [
-          8.376765508864384,
-          -0.025260326844491546
+          8.578138060647346,
+          -1.1281139950933576e-05
         ],
         [
-          8.45273210352972,
-          -0.006763483207816501
+          8.679811554674531,
+          -5.9503594591872946e-05
         ],
         [
-          8.5564809550127,
-          0.016007748181668398
+          8.781485048701716,
+          -0.000109198663821619
         ],
         [
-          8.632458997358304,
-          0.02055428491916142
+          8.883158542728902,
+          -0.00014448074816327395
         ],
         [
-          8.708437039703908,
-          0.012599079456612823
+          9.00524652036951,
+          -0.00016115828170131766
         ],
         [
-          8.784415082049511,
-          -0.003928362931179721
+          9.12733449801012,
+          -0.00014315634615181118
         ],
         [
-          8.860393124395115,
-          -0.021073220674907633
+          9.249422475650729,
+          -0.00010421087382136832
         ],
         [
-          8.936371166740718,
-          -0.03085134325515275
+          9.371510453291338,
+          -6.24231677466198e-05
         ],
         [
-          9.012349209086322,
-          -0.029332616556853222
+          9.493598430931947,
+          -2.9311547822748066e-05
         ],
         [
-          9.088327251431926,
-          -0.018066558019041334
+          9.615686408572556,
+          -1.6487093609476432e-05
         ],
         [
-          9.16430529377753,
-          -0.002842759903861722
+          9.638495054883064,
+          -1.8507232508082954e-05
         ],
         [
-          9.255988954542772,
-          0.01125231433578032
+          9.661303701193573,
+          -2.2936448737996508e-05
         ],
         [
-          9.329184490076974,
-          0.013325426670684544
+          9.684112347504081,
+          -2.9800157114144793e-05
         ],
         [
-          9.402380025611176,
-          0.0069754734932869975
+          9.729729640125099,
+          -4.9494851357320116e-05
         ],
         [
-          9.475575561145378,
-          -0.0045682306140766155
+          9.775346932746116,
+          -7.487422598590528e-05
         ],
         [
-          9.54877109667958,
-          -0.016333556527598783
+          9.820964225367133,
+          -0.00010286253872882284
         ],
         [
-          9.621966632213782,
-          -0.02371914429654963
+          9.921906879777866,
+          -0.00015587443678752853
         ],
         [
-          9.69992497595067,
-          -0.02478380731145699
+          10.004312108890508,
+          -0.00018264854333701263
         ],
         [
-          9.77788331968756,
-          -0.019363573279075036
+          10.08671733800315,
+          -0.00018892947369027603
         ],
         [
-          9.855841663424448,
-          -0.010080599241261923
+          10.16912256711579,
+          -0.00017639550796786393
         ],
         [
-          9.933800007161336,
-          -0.00048050008777504594
+          10.318508402311611,
+          -0.0001290195236073751
         ],
         [
-          10.011758350898225,
-          0.006151295281036487
+          10.416310959001898,
+          -9.676119905754747e-05
         ],
         [
-          10.089716694635113,
-          0.007731887498050802
+          10.514113515692184,
+          -8.235134738684329e-05
         ],
         [
-          10.167675038372002,
-          0.0041302342466322806
+          10.61191607238247,
+          -9.059107204847298e-05
         ],
         [
-          10.260259956542143,
-          -0.004027990801607942
+          10.709718629072757,
+          -0.0001168098120115067
         ],
         [
-          10.331983881553601,
-          -0.01137149678167823
+          10.84073505366698,
+          -0.0001571631328879182
         ],
         [
-          10.403707806565059,
-          -0.01763472337025153
+          10.935791309767657,
+          -0.0001792786135408973
         ],
         [
-          10.475431731576517,
-          -0.02162607802784064
+          11.030847565868333,
+          -0.00018682038239476047
         ],
         [
-          10.570210949134573,
-          -0.02269289815383367
+          11.12590382196901,
+          -0.00018005063488752337
         ],
         [
-          10.664990166692629,
-          -0.018641050785880173
+          11.220960078069686,
+          -0.00016428785614209336
         ],
         [
-          10.759769384250685,
-          -0.011150661278833615
+          11.34293278943959,
+          -0.00014306503495649034
         ],
         [
-          10.854548601808741,
-          -0.0033154883860200407
+          11.4367198655186,
+          -0.0001333668961836568
         ],
         [
-          10.949327819366797,
-          0.0017578282046469412
+          11.530506941597611,
+          -0.0001336107230992371
         ],
         [
-          11.044107036924853,
-          0.0021575351026225514
+          11.624294017676622,
+          -0.00014399940430551215
         ],
         [
-          11.138886254482909,
-          -0.0021717567208034
+          11.718081093755632,
+          -0.00016149922001842802
         ],
         [
-          11.223078569708694,
-          -0.008308908132166781
+          11.830682395509069,
+          -0.0001843650341947032
         ],
         [
-          11.307270884934479,
-          -0.014627010568129692
+          11.943283697262505,
+          -0.000201738184451379
         ],
         [
-          11.391463200160263,
-          -0.019553439729543612
+          12.055884999015941,
+          -0.0002087327746522422
         ],
         [
-          11.526298565803183,
-          -0.02268443690864369
+          12.168486300769377,
+          -0.00020525280709760636
         ],
         [
-          11.629928166907957,
-          -0.0200807886393973
+          12.29994439393496,
+          -0.00019412889431316346
         ],
         [
-          11.733557768012732,
-          -0.014284972136399107
+          12.404633593778348,
+          -0.00018517422587144478
         ],
         [
-          11.837187369117506,
-          -0.007706797597378412
+          12.509322793621736,
+          -0.00018125799391452034
         ],
         [
-          11.940816970222281,
-          -0.002981069001627701
+          12.614011993465125,
+          -0.00018476862248453145
         ],
         [
-          12.064752353445058,
-          -0.00211384180443909
+          12.718701193308513,
+          -0.00019544849279551487
         ],
         [
-          12.188687736667836,
-          -0.006406417490602917
+          12.865684810686352,
+          -0.00021655290632967587
         ],
         [
-          12.312623119890613,
-          -0.013568092253320549
+          12.973565119592086,
+          -0.0002325971247358104
         ],
         [
-          12.43655850311339,
-          -0.02028588828354129
+          13.08144542849782,
+          -0.00024497098146824495
         ],
         [
-          12.560493886336168,
-          -0.023763469491132033
+          13.189325737403555,
+          -0.0002518123618106751
         ],
         [
-          12.684429269558946,
-          -0.022887983582926333
+          13.29720604630929,
+          -0.0002532395142859742
         ],
         [
-          12.808364652781723,
-          -0.01851799480679449
+          13.455915925693203,
+          -0.0002500825327877193
         ],
         [
-          12.831782867710663,
-          -0.017419982568645548
+          13.572668910835402,
+          -0.0002472845041298561
         ],
         [
-          12.855201082639603,
-          -0.016310142103992065
+          13.6894218959776,
+          -0.0002479535670555657
         ],
         [
-          12.878619297568543,
-          -0.015212602447224471
+          13.8061748811198,
+          -0.00025412049656276404
         ],
         [
-          12.925455727426423,
-          -0.013158269755055366
+          13.922927866261999,
+          -0.00026586373504907746
         ],
         [
-          12.972292157284302,
-          -0.011377129478726655
+          14.085961813353116,
+          -0.00028763406941584345
         ],
         [
-          13.019128587142182,
-          -0.00997214555253062
+          14.204687031875425,
+          -0.000304508809863577
         ],
         [
-          13.153906925069139,
-          -0.008381554945326594
+          14.323412250397734,
+          -0.0003189381714662734
         ],
         [
-          13.288685262996095,
-          -0.010582854180851031
+          14.442137468920043,
+          -0.00032920643266091216
         ],
         [
-          13.423463600923052,
-          -0.015438266098429368
+          14.560862687442352,
+          -0.00033521000425626446
         ],
         [
-          13.558241938850008,
-          -0.020777845849112422
+          14.727812813776477,
+          -0.00033951448315121214
         ],
         [
-          13.693020276776965,
-          -0.024474295861894535
+          14.852763845864722,
+          -0.0003422732804720932
         ],
         [
-          13.827798614703921,
-          -0.02533720056591221
+          14.977714877952966,
+          -0.0003476426179866679
         ],
         [
-          13.962576952630878,
-          -0.023484615365118172
+          15.10266591004121,
+          -0.00035737335576724837
         ],
         [
-          14.097355290557834,
-          -0.02013358954105937
+          15.227616942129455,
+          -0.00037184375381324464
         ],
         [
-          14.23213362848479,
-          -0.016983477525660026
+          15.39474055277627,
+          -0.00039657240960096294
         ],
         [
-          14.366911966411747,
-          -0.01549578128707034
+          15.526750000917001,
+          -0.0004183513222292051
         ],
         [
-          14.54025856584105,
-          -0.016785977592751758
+          15.658759449057733,
+          -0.0004394701433021622
         ],
         [
-          14.682392980564643,
-          -0.02028392597781145
+          15.790768897198465,
+          -0.0004581646270908407
         ],
         [
-          14.824527395288236,
-          -0.024654051769538693
+          15.922778345339196,
+          -0.00047377778362449113
         ],
         [
-          14.966661810011828,
-          -0.028474106076714106
+          16.079671368014623,
+          -0.0004893153767892506
         ],
         [
-          15.108796224735421,
-          -0.030721226152156306
+          16.23656439069005,
+          -0.0005038432593457705
         ],
         [
-          15.286616031474669,
-          -0.031054559273159144
+          16.393457413365475,
+          -0.000520146473897583
         ],
         [
-          15.464435838213916,
-          -0.029303805421759588
+          16.5503504360409,
+          -0.0005404259351874077
         ],
         [
-          15.642255644953163,
-          -0.027101766347276568
+          16.72307251287968,
+          -0.0005687198884730049
         ],
         [
-          15.82007545169241,
-          -0.02616362263103697
+          16.895794589718456,
+          -0.0006029303866549925
         ],
         [
-          15.997895258431658,
-          -0.027556530256010625
+          17.068516666557233,
+          -0.0006410342454249611
         ],
         [
-          16.175715065170905,
-          -0.031284448131015
+          17.24123874339601,
+          -0.0006805482864276438
         ],
         [
-          16.353534871910153,
-          -0.03635919725270528
+          17.413960820234788,
+          -0.0007197547613070569
         ],
         [
-          16.5313546786494,
-          -0.04131525487796639
+          17.60482627556807,
+          -0.0007624508907925422
         ],
         [
-          16.709174485388647,
-          -0.04487917642616285
+          17.79569173090135,
+          -0.0008056837717353173
         ],
         [
-          16.886994292127895,
-          -0.04647948964082141
+          17.98655718623463,
+          -0.0008517931040594043
         ],
         [
-          17.0827216691956,
-          -0.046381688403895394
+          18.17742264156791,
+          -0.000903090084031959
         ],
         [
-          17.245756216665097,
-          -0.04565168829739663
+          18.368288096901193,
+          -0.0009609899311180028
         ],
         [
-          17.408790764134594,
-          -0.045397970469351595
+          18.559153552234473,
+          -0.0010258533030427595
         ],
         [
-          17.57182531160409,
-          -0.04642821535995262
+          18.750019007567754,
+          -0.0010973132708684379
         ],
         [
-          17.734859859073588,
-          -0.04913946245841505
+          18.940884462901035,
+          -0.0011747976532566614
         ],
         [
-          17.87633414755382,
-          -0.05270740521199546
+          19.160009857916293,
+          -0.0012708316965903254
         ],
         [
-          17.989632326456782,
-          -0.05615554434686082
+          19.37913525293155,
+          -0.0013747684027143195
         ],
         [
-          18.102930505359744,
-          -0.059860536389347546
+          19.59826064794681,
+          -0.0014877533028920496
         ],
         [
-          18.216228684262706,
-          -0.0636261718203959
+          19.817386042962067,
+          -0.0016114650032196046
         ],
         [
-          18.392123725075212,
-          -0.06939760943056503
+          20.036511437977325,
+          -0.0017477726225926214
         ],
         [
-          18.568018765887718,
-          -0.07465205576862094
+          20.343119545325326,
+          -0.0019628346086528635
         ],
         [
-          18.743913806700224,
-          -0.07916190281692223
+          20.649727652673327,
+          -0.0022105575370562685
         ],
         [
-          18.91980884751273,
-          -0.08307642196167594
+          20.95633576002133,
+          -0.0024956155203062925
         ],
         [
-          19.13456671816614,
-          -0.08757233191666142
+          21.26294386736933,
+          -0.0028228561423946467
         ],
         [
-          19.349324588819552,
-          -0.09254828111937047
+          21.56955197471733,
+          -0.0031974921026693953
         ],
         [
-          19.564082459472964,
-          -0.09878189176456909
+          21.876160082065333,
+          -0.003625136957333401
         ],
         [
-          19.778840330126375,
-          -0.10668134509587618
+          22.182768189413334,
+          -0.004111636551990186
         ],
         [
-          19.993598200779786,
-          -0.11624464008391583
+          22.489376296761336,
+          -0.004662715157239039
         ],
         [
-          20.208356071433197,
-          -0.12721119077190263
+          22.837549744359293,
+          -0.0053732896034598045
         ],
         [
-          20.42311394208661,
-          -0.13927786298345585
+          23.18572319195725,
+          -0.006179443550621095
         ],
         [
-          20.63787181274002,
-          -0.15226011015297347
+          23.53389663955521,
+          -0.007083954097452671
         ],
         [
-          20.89524769419444,
-          -0.1690125869883799
+          23.882070087153167,
+          -0.008086779358537969
         ],
         [
-          21.152623575648857,
-          -0.1873040226103162
+          24.230243534751125,
+          -0.009186216815187071
         ],
         [
-          21.409999457103275,
-          -0.20755098176153486
+          24.578416982349083,
+          -0.010380943313520304
         ],
         [
-          21.667375338557694,
-          -0.23016543145156176
+          24.92659042994704,
+          -0.011671566679986652
         ],
         [
-          21.924751220012112,
-          -0.2554620459769642
+          25.274763877545,
+          -0.01305578702186698
         ],
         [
-          22.18212710146653,
-          -0.2836912858279028
+          25.544320922023445,
+          -0.014175085615943273
         ],
         [
-          22.469164792221026,
-          -0.31895417294845796
+          25.81387796650189,
+          -0.015288160223125659
         ],
         [
-          22.75620248297552,
-          -0.35854563143214757
-        ],
-        [
-          23.043240173730016,
-          -0.402758584797563
-        ],
-        [
-          23.33027786448451,
-          -0.45177404496358764
-        ],
-        [
-          23.617315555239006,
-          -0.5056433611775024
-        ],
-        [
-          23.9043532459935,
-          -0.5643158717833805
-        ],
-        [
-          24.191390936747997,
-          -0.6276989159366977
-        ],
-        [
-          24.419341542299552,
-          -0.6813450992170256
-        ],
-        [
-          24.647292147851108,
-          -0.7379404358422441
-        ],
-        [
-          24.875242753402663,
-          -0.797540774017764
-        ],
-        [
-          25.10319335895422,
-          -0.860170441002295
-        ],
-        [
-          25.331143964505774,
-          -0.9256335497278325
-        ],
-        [
-          25.51872139829633,
-          -0.9810927671886196
-        ],
-        [
-          25.706298832086883,
-          -1.036909773269745
-        ],
-        [
-          25.884966627110675,
-          -1.088646477312452
+          25.885098654500275,
+          -0.015569792470464732
         ],
         [
           25.88571428571429,
-          -1.08885647472684
+          -0.015572186952979801
         ],
         [
-          25.891724887187262,
-          -1.0905300283364083
+          25.891725275535915,
+          -0.015595345743619319
         ],
         [
-          25.897735488660235,
-          -1.092198790700726
+          25.89773626535754,
+          -0.015618429765295538
         ],
         [
-          25.909756691606184,
-          -1.0955453624802671
+          25.90975824500079,
+          -0.01566471773212817
         ],
         [
-          25.921777894552132,
-          -1.0988712425537355
+          25.921780224644042,
+          -0.01571068411381865
         ],
         [
-          25.93379909749808,
-          -1.1021753222536002
+          25.933802204287293,
+          -0.01575631265292294
         ],
         [
-          26.05401112695755,
-          -1.1337540349575095
+          26.05402200071982,
+          -0.016190163251474834
         ],
         [
-          26.17422315641702,
-          -1.1616962329755802
+          26.174241797152344,
+          -0.016568929764238315
         ],
         [
-          26.29443518587649,
-          -1.184333951377285
+          26.29446159358487,
+          -0.01686829301938842
         ],
         [
-          26.41464721533596,
-          -1.1996137341533482
+          26.414681390017396,
+          -0.01705839477009384
         ],
         [
-          26.590536971802308,
-          -1.2034746702968233
+          26.59056092778596,
+          -0.017063730435570468
         ],
         [
-          26.766426728268655,
-          -1.1768713903656915
+          26.76644046555452,
+          -0.01662225613212344
         ],
         [
-          26.942316484735002,
-          -1.1086256488911372
+          26.942320003323083,
+          -0.015572833839120573
         ],
         [
-          27.11820624120135,
-          -0.9860397136617407
+          27.118199541091645,
+          -0.01373305005279083
         ],
         [
-          27.294095997667696,
-          -0.7955746532938797
+          27.294079078860207,
+          -0.010909241025930036
         ],
         [
           27.38571428571429,
-          -0.6650077190050716
+          -0.008984480828267666
         ],
         [
-          27.403707346930535,
+          27.397496400123647,
           0.0
         ],
         [
-          27.42170040814678,
+          27.409278514533003,
           0.0
         ],
         [
-          27.457686530579274,
+          27.43284274335172,
           0.0
         ],
         [
-          27.493672653011767,
+          27.456406972170438,
           0.0
         ],
         [
-          27.52965877544426,
+          27.479971200989155,
           0.0
         ],
         [
-          27.722358182653522,
+          27.597382226258187,
           0.0
         ],
         [
-          27.915057589862784,
+          27.71479325152722,
           0.0
         ],
         [
-          28.107756997072045,
+          27.83220427679625,
           0.0
         ],
         [
-          28.300456404281306,
+          27.949615302065283,
           0.0
         ],
         [
-          28.59167900359794,
+          28.127223521019754,
           0.0
         ],
         [
-          28.882901602914572,
+          28.304831739974226,
           0.0
         ],
         [
-          29.174124202231205,
+          28.482439958928698,
           0.0
         ],
         [
-          29.465346801547838,
+          28.66004817788317,
           0.0
         ],
         [
-          29.75656940086447,
+          28.83765639683764,
           0.0
         ],
         [
-          30.25579246872472,
+          29.142165265211645,
           0.0
         ],
         [
-          30.75501553658497,
+          29.44667413358565,
           0.0
         ],
         [
-          31.25423860444522,
+          29.751183001959653,
           0.0
         ],
         [
-          31.75346167230547,
+          30.055691870333657,
           0.0
         ],
         [
-          32.25268474016572,
+          30.36020073870766,
           0.0
         ],
         [
-          32.75190780802597,
+          30.664709607081665,
           0.0
         ],
         [
-          33.48826295234864,
+          31.156066194366023,
           0.0
         ],
         [
-          34.224618096671314,
+          31.64742278165038,
           0.0
         ],
         [
-          34.96097324099399,
+          32.138779368934735,
           0.0
         ],
         [
-          35.69732838531666,
+          32.63013595621909,
           0.0
         ],
         [
-          36.43368352963933,
+          33.12149254350345,
           0.0
         ],
         [
-          37.18331742700439,
+          33.61284913078781,
           0.0
         ],
         [
-          37.93295132436945,
+          34.104205718072166,
           0.0
         ],
         [
-          38.682585221734506,
+          34.59556230535652,
           0.0
         ],
         [
-          39.432219119099564,
+          35.20520071519727,
           0.0
         ],
         [
-          40.18185301646462,
+          35.81483912503802,
           0.0
         ],
         [
-          41.55565606299418,
+          36.42447753487877,
           0.0
         ],
         [
-          42.92945910952374,
+          37.03411594471952,
           0.0
         ],
         [
-          44.3032621560533,
+          37.61030939313683,
           0.0
         ],
         [
-          45.67706520258286,
+          38.186502841554145,
           0.0
         ],
         [
-          47.05086824911242,
+          38.76269628997146,
           0.0
         ],
         [
-          48.62323521534373,
+          39.33888973838877,
           0.0
         ],
         [
-          50.19560218157505,
+          40.470199282925094,
           0.0
         ],
         [
-          51.76796914780636,
+          41.601508827461416,
           0.0
         ],
         [
-          53.340336114037676,
+          42.73281837199774,
           0.0
         ],
         [
-          54.91270308026899,
+          43.86412791653406,
           0.0
         ],
         [
-          55.86204148248446,
+          45.065546566682556,
           0.0
         ],
         [
-          56.811379884699925,
+          46.26696521683105,
           0.0
         ],
         [
-          57.76071828691539,
+          47.46838386697955,
           0.0
         ],
         [
-          58.71005668913086,
+          48.0644116487991,
           0.0
         ],
         [
-          59.701612671241776,
+          48.66043943061865,
           0.0
         ],
         [
-          60.69316865335269,
+          49.2564672124382,
           0.0
         ],
         [
-          61.68472463546361,
+          49.85016027085198,
           0.0
         ],
         [
-          63.019700273431596,
+          50.44385332926576,
           0.0
         ],
         [
-          64.35467591139958,
+          51.037546387679534,
           0.0
         ],
         [
-          65.68965154936757,
+          52.22602215013901,
           0.0
         ],
         [
-          67.66870000169779,
+          53.414497912598485,
           0.0
         ],
         [
-          69.647748454028,
+          54.60297367505796,
           0.0
         ],
         [
-          71.62679690635822,
+          55.78628196962012,
           0.0
         ],
         [
-          73.60427163292789,
+          56.96959026418228,
           0.0
         ],
         [
-          75.58174635949756,
+          58.15289855874444,
           0.0
         ],
         [
-          77.55922108606723,
+          59.80914674127502,
           0.0
         ],
         [
-          83.74360774187622,
+          61.465394923805604,
           0.0
         ],
         [
-          89.92799439768521,
+          63.12164310633619,
           0.0
         ],
         [
-          91.47409106163745,
+          67.96806599954927,
           0.0
         ],
         [
-          93.0201877255897,
+          69.17967172285253,
           0.0
         ],
         [
-          94.56628438954193,
+          71.60288316945908,
           0.0
         ],
         [
-          95.55174469780209,
+          74.02609461606562,
           0.0
         ],
         [
-          96.53720500606225,
+          76.44930606267216,
           0.0
         ],
         [
-          97.52266531432241,
+          82.05653011294073,
           0.0
         ],
         [
-          98.50866761324593,
+          87.6637541632093,
           0.0
         ],
         [
-          104.229915181177,
+          93.27097821347787,
           0.0
         ],
         [
-          109.95116274910808,
+          102.7701466845776,
           0.0
         ],
         [
-          115.67241031703915,
+          112.26931515567732,
           0.0
         ],
         [
-          123.80427445904986,
+          121.76848362677704,
           0.0
         ],
         [
-          131.93613860106058,
+          131.26765209787678,
           0.0
         ],
         [
-          140.0680027430713,
+          142.3439771582361,
           0.0
         ],
         [
-          148.19986688508203,
+          153.42030221859542,
           0.0
         ],
         [
-          158.3904761904762,
+          158.24761904761905,
           0.0
         ],
         [
-          158.5093989588007,
+          158.36654057116988,
           0.0
         ],
         [
-          158.62832172712518,
+          158.4854620947207,
           0.0
         ],
         [
-          159.8904761904762,
+          159.74761904761905,
           0.0
         ],
         [
-          159.89288732694692,
+          159.74948515317416,
           0.0
         ],
         [
-          159.89529846341765,
+          159.75135125872927,
           0.0
         ],
         [
-          159.90012073635913,
+          159.75508346983946,
           0.0
         ],
         [
-          159.9049430093006,
+          159.75881568094965,
           0.0
         ],
         [
-          159.9097652822421,
+          159.76254789205984,
           0.0
         ],
         [
-          159.93243780659526,
+          159.78008817979105,
           0.0
         ],
         [
-          159.95511033094843,
+          159.79762846752226,
           0.0
         ],
         [
-          159.9777828553016,
+          159.81516875525347,
           0.0
         ],
         [
-          160.00045537965477,
+          159.83270904298467,
           0.0
         ],
         [
-          160.0346633693688,
+          159.85917311481012,
           0.0
         ],
         [
-          160.0688713590828,
+          159.88563718663556,
           0.0
         ],
         [
-          160.10307934879683,
+          159.912101258461,
           0.0
         ],
         [
-          160.13728733851084,
+          159.93856533028645,
           0.0
         ],
         [
-          160.17149532822486,
+          159.9650294021119,
           0.0
         ],
         [
-          160.23106728260558,
+          160.01112136384918,
           0.0
         ],
         [
-          160.2906392369863,
+          160.05721332558647,
           0.0
         ],
         [
-          160.350211191367,
+          160.10330528732376,
           0.0
         ],
         [
-          160.40978314574772,
+          160.14939724906105,
           0.0
         ],
         [
-          160.46935510012844,
+          160.19548921079834,
           0.0
         ],
         [
-          160.52892705450915,
+          160.24158117253563,
           0.0
         ],
         [
-          160.6259323588013,
+          160.3166327641328,
           0.0
         ],
         [
-          160.72293766309343,
+          160.39168435572998,
           0.0
         ],
         [
-          160.81994296738557,
+          160.46673594732715,
           0.0
         ],
         [
-          160.9169482716777,
+          160.54178753892432,
           0.0
         ],
         [
-          161.01395357596985,
+          160.6168391305215,
           0.0
         ],
         [
-          161.110958880262,
+          160.69189072211867,
           0.0
         ],
         [
-          161.26736304673776,
+          160.81292628958846,
           0.0
         ],
         [
-          161.42376721321352,
+          160.93396185705825,
           0.0
         ],
         [
-          161.5801713796893,
+          161.05499742452804,
           0.0
         ],
         [
-          161.73657554616506,
+          161.17603299199783,
           0.0
         ],
         [
-          161.89297971264082,
+          161.29706855946762,
           0.0
         ],
         [
-          162.11653214894974,
+          161.46985652170034,
           0.0
         ],
         [
-          162.34008458525867,
+          161.64264448393305,
           0.0
         ],
         [
-          162.5636370215676,
+          161.81543244616577,
           0.0
         ],
         [
-          162.7871894578765,
+          161.9882204083985,
           0.0
         ],
         [
-          163.01074189418543,
+          162.1610083706312,
           0.0
         ],
         [
-          163.3020518484637,
+          162.38610275126362,
           0.0
         ],
         [
-          163.59336180274195,
+          162.61119713189603,
           0.0
         ],
         [
-          163.88467175702021,
+          162.83629151252845,
           0.0
         ],
         [
-          164.17598171129848,
+          163.06138589316086,
           0.0
         ],
         [
-          164.4850936705858,
+          163.3001953672972,
           0.0
         ],
         [
-          164.79420562987312,
+          163.53900484143352,
           0.0
         ],
         [
-          165.10331758916044,
+          163.77781431556986,
           0.0
         ],
         [
-          165.4129391221861,
+          164.01699558831393,
           0.0
         ],
         [
-          165.72256065521174,
+          164.256176861058,
           0.0
         ],
         [
-          166.03218218823739,
+          164.49535813380209,
           0.0
         ],
         [
-          166.34184757413777,
+          164.73455176863084,
           0.0
         ],
         [
-          167.93141144685217,
+          165.96552936083825,
           0.0
         ],
         [
-          169.52097531956656,
+          167.19650695304566,
           0.0
         ],
         [
-          171.11053919228095,
+          168.42748454525307,
           0.0
         ],
         [
-          175.76088994831585,
+          172.0340398974043,
           0.0
         ],
         [
-          180.41124070435075,
+          175.64059524955556,
           0.0
         ],
         [
-          185.06159146038564,
+          179.2471506017068,
           0.0
         ],
         [
-          202.12571753179242,
+          196.48491242496618,
           0.0
         ],
         [
-          219.1898436031992,
+          213.72267424822556,
           0.0
         ],
         [
-          236.25396967460597,
+          230.96043607148493,
           0.0
         ],
         [
-          261.9195710352043,
+          256.216460721343,
           0.0
         ],
         [
-          287.5851723958026,
+          281.4724853712011,
           0.0
         ],
         [
-          298.2290954115797,
+          298.21839993404154,
           0.0
         ]
       ],
-      "title": "M1 (Nm) x Time (S)",
+      "title": "M2 (Nm) x Time (S)",
       "inputs": [
         "Time (s)"
       ],
       "outputs": [
-        "M1 (Nm)"
+        "M2 (Nm)"
       ],
       "interpolation": "linear",
       "extrapolation": "zero",
       "signature": {
         "module": "rocketpy.mathutils.function",
-        "name": "Function"
+        "name": "Function",
+        "hash": 8532846656372
       }
     },
-    "M2": {
+    "M3": {
       "source": [
         [
           0.0,
           0.0
         ],
         [
-          0.0014095582940420635,
-          0.0
-        ],
-        [
-          0.002819116588084127,
-          0.0
-        ],
-        [
-          0.005638233176168254,
-          0.0
-        ],
-        [
-          0.008457349764252381,
-          0.0
-        ],
-        [
-          0.011276466352336508,
-          0.0
-        ],
-        [
-          0.03946763223317778,
-          0.0
-        ],
-        [
-          0.04085528032083424,
-          0.0
-        ],
-        [
-          0.042242928408490706,
-          0.0
-        ],
-        [
-          0.045018224583803626,
-          0.0
-        ],
-        [
-          0.047793520759116546,
-          0.0
-        ],
-        [
-          0.05056881693442947,
-          0.0
-        ],
-        [
-          0.051535065794346184,
-          0.0
-        ],
-        [
-          0.0525013146542629,
-          0.0
-        ],
-        [
-          0.05443381237409633,
-          0.0
-        ],
-        [
-          0.056366310093929756,
+          0.00140955829402094,
           0.0
         ],
         [
-          0.05829880781376318,
+          0.00281911658804188,
           0.0
         ],
         [
-          0.06066778422868188,
+          0.00563823317608376,
           0.0
         ],
         [
-          0.06303676064360057,
+          0.00845734976412564,
           0.0
         ],
         [
-          0.06540573705851926,
+          0.01127646635216752,
           0.0
         ],
         [
-          0.08909550120770625,
+          0.039467632232586314,
           0.0
         ],
         [
-          0.09280001741842829,
+          0.04085528032029989,
           0.0
         ],
         [
-          0.09574786203389758,
+          0.04224292840801347,
           0.0
         ],
         [
-          0.09869570664936687,
+          0.04501822458344063,
           0.0
         ],
         [
-          0.10099207719472714,
+          0.047793520758867794,
           0.0
         ],
         [
-          0.1032884477400874,
+          0.050568816934294956,
           0.0
         ],
         [
-          0.10558481828544766,
+          0.051535065794208836,
           0.0
         ],
         [
-          0.11017755937616817,
+          0.052501314654122715,
           0.0
         ],
         [
-          0.11477030046688869,
+          0.05443381237395048,
           0.0
         ],
         [
-          0.1193630415576092,
+          0.056366310093778245,
           0.0
         ],
         [
-          0.13127045763130013,
+          0.05829880781360601,
           0.0
         ],
         [
-          0.14317787370499105,
+          0.06066778422864502,
           0.0
         ],
         [
-          0.14995992644651876,
+          0.06303676064368403,
           0.0
         ],
         [
-          0.1542011028620784,
+          0.06540573705872305,
           0.0
         ],
         [
-          0.15844227927763802,
+          0.08909550120911316,
           0.0
         ],
         [
-          0.16268345569319764,
+          0.09280001741983737,
           0.0
         ],
         [
-          0.1711658085243169,
+          0.09574786203637055,
           0.0
         ],
         [
-          0.17964816135543615,
+          0.09869570665290373,
           0.0
         ],
         [
-          0.1881305141865554,
+          0.10099207719695144,
           0.0
         ],
         [
-          0.19446574773727407,
+          0.10328844774099916,
           0.0
         ],
         [
-          0.20080098128799273,
+          0.10558481828504687,
           0.0
         ],
         [
-          0.2056611859339936,
+          0.1101775593731423,
           0.0
         ],
         [
-          0.21052139057999447,
+          0.11477030046123773,
           0.0
         ],
         [
-          0.21538159522599534,
+          0.11936304154933317,
           0.0
         ],
         [
-          0.22510200451799706,
+          0.1312706469438581,
           0.0
         ],
         [
-          0.23482241380999877,
+          0.14317825233838302,
           0.0
         ],
         [
-          0.24454282310200048,
+          0.1499601229088181,
           0.0
         ],
         [
-          0.2542632323940022,
+          0.1542012180187087,
           0.0
         ],
         [
-          0.35146732531401936,
+          0.1584423131285993,
           0.0
         ],
         [
-          0.3632465986442917,
+          0.1626834082384899,
           0.0
         ],
         [
-          0.3693545968582991,
+          0.1711655984582711,
           0.0
         ],
         [
-          0.37546259507230645,
+          0.17964778867805228,
           0.0
         ],
         [
-          0.3876785915003212,
+          0.18812997889783348,
           0.0
         ],
         [
-          0.39989458792833593,
+          0.19446537171097383,
           0.0
         ],
         [
-          0.4121105843563507,
+          0.20080076452411422,
           0.0
         ],
         [
-          0.4714932108541475,
+          0.20566109450366143,
           0.0
         ],
         [
-          0.5078257800637102,
+          0.21052142448320865,
           0.0
         ],
         [
-          0.5343429255049618,
+          0.21538175446275587,
           0.0
         ],
         [
-          0.5608600709462134,
+          0.22510241442185028,
           0.0
         ],
         [
-          0.587377216387465,
+          0.23482307438094469,
           0.0
         ],
         [
-          0.6404115072699682,
+          0.2445437343400391,
           0.0
         ],
         [
-          0.6934457981524714,
+          0.2542643942991335,
           0.0
         ],
         [
-          0.7464800890349746,
+          0.3514709938900776,
           0.0
         ],
         [
-          0.7995143799174779,
+          0.36324670161934375,
           0.0
         ],
         [
-          0.8131556786423583,
-          0.0
+          0.3693547037882063,
+          2.556569561283345e-32
         ],
         [
-          0.8267969773672387,
-          0.0
+          0.3754627059570688,
+          2.6045308675390685e-32
         ],
         [
-          0.8404382760921191,
-          0.0
+          0.3876787102947939,
+          -3.451371588147349e-30
         ],
         [
-          0.8773817713324279,
-          0.0
+          0.39989471463251897,
+          -7.187775155830938e-30
         ],
         [
-          0.9143252665727367,
-          0.0
+          0.41211071897024404,
+          -6.751045460429543e-29
         ],
         [
-          0.9512687618130455,
-          0.0
+          0.47147904178591876,
+          -4.192944590613638e-28
         ],
         [
-          0.9671044469204755,
-          0.0
+          0.5078212847273655,
+          -4.517133898502656e-28
         ],
         [
-          0.9987682629763311,
-          0.0
+          0.5343387025617514,
+          -4.741848712520792e-28
         ],
         [
-          1.0182059593067265,
-          0.0
+          0.5608561203961373,
+          -4.9568735699683235e-28
         ],
         [
-          1.037643655637122,
-          0.0
+          0.5873735382305232,
+          2.044553943676251e-25
         ],
         [
-          1.0570813519675175,
-          0.0
+          0.6404083738992948,
+          -1.7426054144676646e-26
         ],
         [
-          1.0878522163238507,
-          0.0
+          0.6934432095680665,
+          -1.4698682892436586e-24
         ],
         [
-          1.1186230806801838,
-          0.0
+          0.7464780452368381,
+          -1.4009384546218003e-24
         ],
         [
-          1.1439344065815038,
-          0.0
+          0.7995128809056098,
+          6.5223184607329654e-24
         ],
         [
-          1.1692457324828238,
-          0.0
+          0.813164227469089,
+          9.149428838159983e-24
         ],
         [
-          1.1945570583841438,
-          0.0
+          0.8268155740325682,
+          9.249895409740471e-24
         ],
         [
-          1.2316667865519533,
-          0.0
+          0.8404669205960474,
+          9.347572382963852e-24
         ],
         [
-          1.2687765147197627,
-          0.0
+          0.8775732859954444,
+          -2.0304885491799784e-23
         ],
         [
-          1.3058862428875722,
-          0.0
+          0.9146796513948413,
+          -2.1123878221383444e-23
         ],
         [
-          1.3429959710553816,
-          0.0
+          0.9517860167942382,
+          -2.195125334040245e-23
         ],
         [
-          1.4022433435144068,
-          0.0
+          0.9674325642455079,
+          -3.654121253717738e-23
         ],
         [
-          1.447124093183637,
-          0.0
+          0.9990075872778321,
+          -1.3403183510354198e-22
         ],
         [
-          1.4920048428528674,
-          0.0
+          1.0183793592598076,
+          -3.0542709990100503e-22
         ],
         [
-          1.5261259080406766,
-          0.0
+          1.037751131241783,
+          2.414810621575953e-18
         ],
         [
-          1.5602469732284858,
-          0.0
+          1.0571229032237586,
+          5.73090597750764e-18
         ],
         [
-          1.594368038416295,
-          0.0
+          1.0878788324799102,
+          7.39814709937679e-18
         ],
         [
-          1.6284891036041043,
-          0.0
+          1.118634761736062,
+          7.99832385271237e-18
         ],
         [
-          1.6626101687919135,
-          0.0
+          1.1439443303803107,
+          1.1307544825992342e-18
         ],
         [
-          1.6967312339797227,
-          0.0
+          1.1692538990245596,
+          -7.712120760091817e-18
         ],
         [
-          1.730852299167532,
-          0.0
+          1.1945634676688084,
+          -1.654677952353561e-17
         ],
         [
-          1.770204581699234,
-          0.0
+          1.2316568052102488,
+          -2.8661401030660406e-17
         ],
         [
-          1.809556864230936,
-          0.0
+          1.2687501427516892,
+          -2.6177826079950442e-17
         ],
         [
-          1.8489091467626382,
-          0.0
+          1.3058434802931296,
+          -1.2360223653925718e-17
         ],
         [
-          1.8882614292943403,
-          0.0
+          1.34293681783457,
+          6.5733446398008805e-18
         ],
         [
-          1.9276137118260424,
-          0.0
+          1.4021386812930872,
+          2.3866164650036256e-17
         ],
         [
-          1.9669659943577444,
-          0.0
+          1.447031703480718,
+          -4.876941294882455e-17
         ],
         [
-          2.0063182768894463,
-          0.0
+          1.491924725668349,
+          -1.6959137890359892e-16
         ],
         [
-          2.0456705594211484,
-          0.0
+          1.5260726318617992,
+          -2.1360141423381766e-16
         ],
         [
-          2.0850228419528505,
-          0.0
+          1.5602205380552494,
+          -2.1947856327563684e-16
         ],
         [
-          2.1243751244845526,
-          0.0
+          1.5943684442486996,
+          -2.1017175740101122e-16
         ],
         [
-          2.1637274070162547,
-          0.0
+          1.6285163504421498,
+          -1.9828155221637946e-16
         ],
         [
-          2.2030796895479567,
-          0.0
+          1.6626642566356,
+          -1.8766270353983504e-16
         ],
         [
-          2.242431972079659,
-          0.0
+          1.6968121628290502,
+          -1.7841045572363896e-16
         ],
         [
-          2.281784254611361,
-          0.0
+          1.7309600690225004,
+          -1.6984479582119016e-16
         ],
         [
-          2.321136537143063,
-          0.0
+          1.770308643380365,
+          -1.6028194567233866e-16
         ],
         [
-          2.360488819674765,
-          0.0
+          1.8096572177382295,
+          -1.5083614764830558e-16
         ],
         [
-          2.399841102206467,
-          0.0
+          1.849005792096094,
+          -1.4146841243790402e-16
         ],
         [
-          2.4391933847381693,
-          0.0
+          1.8883543664539586,
+          -1.3225963888105476e-16
         ],
         [
-          2.4785456672698714,
-          0.0
+          1.9277029408118231,
+          -1.2330338830868287e-16
         ],
         [
-          2.5178979498015734,
-          0.0
+          1.9670515151696877,
+          -1.146528227963545e-16
         ],
         [
-          2.5572502323332755,
-          0.0
+          2.006400089527552,
+          -1.0632901846518839e-16
         ],
         [
-          2.5966025148649776,
-          0.0
+          2.0457486638854165,
+          -9.834156178728641e-17
         ],
         [
-          2.6359547973966797,
-          0.0
+          2.085097238243281,
+          -9.070214950818845e-17
         ],
         [
-          2.675307079928382,
-          0.0
+          2.124445812601145,
+          -8.342565798240802e-17
         ],
         [
-          2.714659362460084,
-          0.0
+          2.1637943869590095,
+          -7.652460810198112e-17
         ],
         [
-          2.7466638251883717,
-          0.0
+          2.203142961316874,
+          -7.000577477272101e-17
         ],
         [
-          2.7786682879166595,
-          0.0
+          2.242491535674738,
+          -6.387057718410692e-17
         ],
         [
-          2.8106727506449474,
-          0.0
+          2.2818401100326025,
+          -5.842328723046999e-17
         ],
         [
-          2.842677213373235,
-          0.0
+          2.3211886843904668,
+          8.109708295110148e-18
         ],
         [
-          2.874681676101523,
-          0.0
+          2.360537258748331,
+          1.6536247407547414e-16
         ],
         [
-          2.9108918137851214,
-          0.0
+          2.3998858331061954,
+          3.674984850366962e-16
         ],
         [
-          2.9402847513530936,
-          0.0
+          2.4392344074640597,
+          4.537461408559928e-16
         ],
         [
-          2.9637983886571173,
-          0.0
+          2.478582981821924,
+          4.73514227321894e-16
         ],
         [
-          2.987312025961141,
-          0.0
+          2.5179315561797884,
+          4.192067571509296e-16
         ],
         [
-          2.9914721939592726,
-          0.0
+          2.5572801305376527,
+          2.7445246265484235e-16
         ],
         [
-          2.995632361957404,
-          0.0
+          2.596628704895517,
+          3.715865375834282e-17
         ],
         [
-          2.9997925299555357,
-          0.0
+          2.6359772792533813,
+          -2.6345366331542723e-16
         ],
         [
-          3.0010806713261253,
-          0.0
+          2.6753258536112456,
+          -5.669324861970207e-16
         ],
         [
-          3.002368812696715,
-          0.0
+          2.71467442796911,
+          -7.938011411563301e-16
         ],
         [
-          3.0049450954378942,
-          0.0
+          2.746682540487563,
+          -8.406003887665901e-16
         ],
         [
-          3.0075213781790735,
-          0.0
+          2.778690653006016,
+          -7.697165085519122e-16
         ],
         [
-          3.031179520120233,
-          0.0
+          2.810698765524469,
+          -6.029409764094527e-16
         ],
         [
-          3.0548376620613924,
-          0.0
+          2.842706878042922,
+          -3.8052687232922967e-16
         ],
         [
-          3.078495804002552,
-          0.0
+          2.874714990561375,
+          -1.5072141219458913e-16
         ],
         [
-          3.1021539459437113,
-          0.0
+          2.9109277644238576,
+          9.548534211295925e-17
         ],
         [
-          3.1205915242496687,
-          0.0
+          2.940339896156497,
+          2.3731679202279587e-16
         ],
         [
-          3.139029102555626,
-          0.0
+          2.9638563968017557,
+          2.6597613841980633e-16
         ],
         [
-          3.1574666808615834,
-          0.0
+          2.9873728974470146,
+          2.4702879870763685e-16
         ],
         [
-          3.1943418374734978,
-          0.0
+          2.991532758872659,
+          2.4332220408350216e-16
         ],
         [
-          3.223214302746968,
-          0.0
+          2.995692620298303,
+          2.3955111369902486e-16
         ],
         [
-          3.252086768020438,
-          0.0
+          2.999852481723947,
+          2.3577524042914223e-16
         ],
         [
-          3.2809592332939084,
-          0.0
+          3.0011406359017885,
+          2.346398822833622e-16
         ],
         [
-          3.2861061530217075,
-          0.0
+          3.00242879007963,
+          2.335091771294204e-16
         ],
         [
-          3.2912530727495066,
-          0.0
+          3.0050050984353125,
+          2.312671062038103e-16
         ],
         [
-          3.2963999924773058,
-          0.0
+          3.007581406790995,
+          2.2904341900723945e-16
         ],
         [
-          3.3042992470019175,
-          0.0
+          3.0312400452524226,
+          2.069957966610124e-16
         ],
         [
-          3.312198501526529,
-          0.0
+          3.05489868371385,
+          1.883217857717512e-16
         ],
         [
-          3.320097756051141,
-          0.0
+          3.0785573221752776,
+          1.7169594883807745e-16
         ],
         [
-          3.329990894740742,
-          0.0
+          3.102215960636705,
+          1.498543749832013e-16
         ],
         [
-          3.339884033430343,
-          0.0
+          3.120664542586555,
+          1.34324766376402e-16
         ],
         [
-          3.349777172119944,
-          0.0
+          3.139113124536405,
+          1.2068967152611653e-16
         ],
         [
-          3.3683253555356067,
-          0.0
+          3.1575617064862547,
+          1.0925990252986759e-16
         ],
         [
-          3.3868735389512694,
-          0.0
+          3.194458870385954,
+          9.225896400845064e-17
         ],
         [
-          3.4020443640890705,
-          0.0
+          3.2233916577517485,
+          8.892105027150347e-17
         ],
         [
-          3.4113407650123997,
-          0.0
+          3.252324445117543,
+          8.828832515381663e-17
         ],
         [
-          3.420637165935729,
-          0.0
+          3.2812572324833376,
+          8.65191187421317e-17
         ],
         [
-          3.429933566859058,
-          0.0
+          3.2864042093564865,
+          8.508065440700979e-17
         ],
         [
-          3.446308281894537,
-          0.0
+          3.2915511862296354,
+          8.359140675109445e-17
         ],
         [
-          3.4626829969300164,
-          0.0
+          3.2966981631027843,
+          8.207790020158972e-17
         ],
         [
-          3.4790577119654955,
-          0.0
+          3.3044731976480057,
+          7.958634660820254e-17
         ],
         [
-          3.5098113349838638,
-          0.0
+          3.312248232193227,
+          7.707520893934131e-17
         ],
         [
-          3.534175816549051,
-          0.0
+          3.3200232667384486,
+          7.46109677632324e-17
         ],
         [
-          3.558540298114238,
-          0.0
+          3.3299608976332786,
+          7.156204475598222e-17
         ],
         [
-          3.582904779679425,
-          0.0
+          3.3398985285281086,
+          6.86296024908168e-17
         ],
         [
-          3.615075076269808,
-          0.0
+          3.3498361594229387,
+          6.58129537669186e-17
         ],
         [
-          3.6472453728601906,
-          0.0
+          3.3684063767347974,
+          6.079876934531265e-17
         ],
         [
-          3.6794156694505733,
-          0.0
+          3.386976594046656,
+          6.228233678790326e-17
         ],
         [
-          3.711585966040956,
-          0.0
+          3.4020328166662903,
+          6.610057287836526e-17
         ],
         [
-          3.7510748617223286,
-          0.0
+          3.4113057466050263,
+          6.52618197997442e-17
         ],
         [
-          3.790563757403701,
-          0.0
+          3.4205786765437622,
+          6.328090785848089e-17
         ],
         [
-          3.830052653085074,
-          0.0
+          3.429851606482498,
+          6.097834457218033e-17
         ],
         [
-          3.862940498739986,
-          0.0
+          3.4462125806335115,
+          5.706133499950704e-17
         ],
         [
-          3.895828344394898,
-          0.0
+          3.462573554784525,
+          5.3294756490180664e-17
         ],
         [
-          3.901564462162616,
-          0.0
+          3.4789345289355382,
+          4.9742560032254036e-17
         ],
         [
-          3.9073005799303346,
-          0.0
+          3.5099101021393686,
+          4.3627951710925066e-17
         ],
         [
-          3.913036697698053,
-          0.0
+          3.5343946919875657,
+          3.932405152815388e-17
         ],
         [
-          3.924489906398398,
-          0.0
+          3.558879281835763,
+          3.5444110754812457e-17
         ],
         [
-          3.935943115098743,
-          0.0
+          3.58336387168396,
+          3.194771304559678e-17
         ],
         [
-          3.947396323799088,
-          0.0
+          3.6154318916074843,
+          2.789974010963805e-17
         ],
         [
-          3.975516795322242,
-          0.0
+          3.6474999115310087,
+          2.4374179100606094e-17
         ],
         [
-          4.003637266845396,
-          0.0
+          3.679567931454533,
+          2.1296587251478013e-17
         ],
         [
-          4.03175773836855,
-          0.0
+          3.7116359513780575,
+          1.8609178335855746e-17
         ],
         [
-          4.071718134752553,
-          0.0
+          3.750677226849746,
+          1.5791999638067073e-17
         ],
         [
-          4.111678531136556,
-          0.0
+          3.789718502321435,
+          1.3402492681018215e-17
         ],
         [
-          4.151638927520558,
-          0.0
+          3.8287597777931235,
+          1.137857840733734e-17
         ],
         [
-          4.191599323904561,
-          0.0
+          3.867801053264812,
+          9.665395735228299e-18
         ],
         [
-          4.247720558129715,
-          0.0
+          3.906842328736501,
+          8.21436871927725e-18
         ],
         [
-          4.293788946145795,
-          0.0
+          3.9127975041938576,
+          8.013375067178848e-18
         ],
         [
-          4.3319865166419085,
-          0.0
+          3.9187526796512144,
+          7.81740997968577e-18
         ],
         [
-          4.370184087138022,
-          0.0
+          3.9247078551085712,
+          7.62635403073954e-18
         ],
         [
-          4.408381657634136,
-          0.0
+          3.9366182060232844,
+          7.002827806799756e-18
         ],
         [
-          4.44657922813025,
-          0.0
+          3.9485285569379975,
+          6.25882759621706e-18
         ],
         [
-          4.484776798626363,
-          0.0
+          3.9604389078527107,
+          5.489813236595286e-18
         ],
         [
-          4.527459427885128,
-          0.0
+          3.9894733064604,
+          4.211136320619069e-18
         ],
         [
-          4.570142057143892,
-          0.0
+          4.018507705068089,
+          3.4637018779729833e-18
         ],
         [
-          4.612824686402656,
-          0.0
+          4.047542103675778,
+          3.024114729289807e-18
         ],
         [
-          4.655507315661421,
-          0.0
+          4.0765765022834675,
+          2.7048691335241686e-18
         ],
         [
-          4.698189944920185,
-          0.0
+          4.119155795005119,
+          2.3381786566536334e-18
         ],
         [
-          4.752240597633832,
-          0.0
+          4.16173508772677,
+          2.0064648569482414e-18
         ],
         [
-          4.806291250347479,
-          0.0
+          4.1691207712068685,
+          1.8989454517559334e-18
         ],
         [
-          4.8603419030611255,
-          0.0
+          4.176506454686967,
+          1.743844587583961e-18
         ],
         [
-          4.914392555774772,
-          0.0
+          4.1838921381670655,
+          1.575974869592277e-18
         ],
         [
-          4.968443208488419,
-          0.0
+          4.1986635051272625,
+          2.5089183689248884e-20
         ],
         [
-          5.022493861202066,
-          0.0
+          4.2134348720874595,
+          -1.4862666437918732e-18
         ],
         [
-          5.076544513915713,
-          0.0
+          4.2282062390476565,
+          -2.436480005456154e-18
         ],
         [
-          5.13059516662936,
-          0.0
+          4.264323210631898,
+          -3.81950027816461e-18
         ],
         [
-          5.1846458193430065,
-          0.0
+          4.300440182216139,
+          -4.154611495939592e-18
         ],
         [
-          5.238696472056653,
-          0.0
+          4.33655715380038,
+          -4.794381206957015e-18
         ],
         [
-          5.2927471247703,
-          0.0
+          4.372674125384622,
+          -5.834638936818995e-18
         ],
         [
-          5.342460668455986,
-          0.0
+          4.416044435312633,
+          -6.2048807210887915e-18
         ],
         [
-          5.392174212141671,
-          0.0
+          4.459414745240645,
+          -4.2744647152816034e-18
         ],
         [
-          5.441887755827357,
-          0.0
+          4.502785055168657,
+          -1.9155357095897941e-19
         ],
         [
-          5.491601299513042,
-          0.0
+          4.546155365096668,
+          3.809907602585218e-18
         ],
         [
-          5.554603109165186,
-          0.0
+          4.58952567502468,
+          5.526950951924204e-18
         ],
         [
-          5.617604918817331,
-          0.0
+          4.632895984952691,
+          4.444368938638242e-18
         ],
         [
-          5.6677507107483684,
-          0.0
+          4.676266294880703,
+          1.6433266700402172e-18
         ],
         [
-          5.717896502679406,
-          0.0
+          4.719636604808715,
+          -1.3557858708023562e-18
         ],
         [
-          5.768042294610444,
-          0.0
+          4.768224902129621,
+          -3.8783295850200386e-18
         ],
         [
-          5.818188086541482,
-          0.0
+          4.816813199450527,
+          -4.677482257791264e-18
         ],
         [
-          5.878315251829882,
-          0.0
+          4.865401496771433,
+          -3.609831425795038e-18
         ],
         [
-          5.928299499698518,
-          0.0
+          4.913989794092339,
+          -1.114362519540391e-18
         ],
         [
-          5.978283747567154,
-          0.0
+          4.962578091413246,
+          1.8307332196852592e-18
         ],
         [
-          6.02826799543579,
-          0.0
+          5.016300880486902,
+          3.2566886877931564e-18
         ],
         [
-          6.078252243304426,
-          0.0
+          5.070023669560559,
+          2.917332339200646e-18
         ],
         [
-          6.14293081584079,
-          0.0
+          5.123746458634216,
+          2.065442856861769e-18
         ],
         [
-          6.196765840796611,
-          0.0
+          5.177469247707872,
+          1.4916301718294205e-18
         ],
         [
-          6.250600865752432,
-          0.0
+          5.219601255563254,
+          1.2950530543444877e-18
         ],
         [
-          6.304435890708253,
-          0.0
+          5.261733263418636,
+          -2.606283072712794e-17
         ],
         [
-          6.3582709156640735,
-          0.0
+          5.3038652712740175,
+          -3.110676327848655e-17
         ],
         [
-          6.433461438883678,
-          0.0
+          5.345997279129399,
+          -8.859323944763107e-17
         ],
         [
-          6.493499513622796,
-          0.0
+          5.388129286984781,
+          2.964313883820588e-17
         ],
         [
-          6.553537588361913,
-          0.0
+          5.438594166103664,
+          3.5573485707351687e-16
         ],
         [
-          6.613575663101031,
-          0.0
+          5.489059045222548,
+          3.9094842239152394e-16
         ],
         [
-          6.6736137378401486,
-          0.0
+          5.539523924341431,
+          -1.5151345777845625e-16
         ],
         [
-          6.752474107792829,
-          0.0
+          5.589988803460314,
+          -8.469713683395282e-16
         ],
         [
-          6.813959694855546,
-          0.0
+          5.6404536825791975,
+          -1.1012157512943225e-15
         ],
         [
-          6.875445281918263,
-          0.0
+          5.690918561698081,
+          -8.289311933744036e-16
         ],
         [
-          6.93693086898098,
-          0.0
+          5.741383440816964,
+          -4.168230009731531e-16
         ],
         [
-          6.998416456043697,
-          0.0
+          5.7918483199358475,
+          -2.0560044416815337e-16
         ],
         [
-          7.079711027784927,
-          0.0
+          5.842313199054731,
+          -2.0345245691640798e-16
         ],
         [
-          7.1413765714336215,
-          0.0
+          5.900175444574162,
+          -3.134217927339182e-16
         ],
         [
-          7.203042115082316,
-          0.0
+          5.958037690093594,
+          -3.6483182914650705e-16
         ],
         [
-          7.264707658731011,
-          0.0
+          6.015899935613025,
+          -3.2321638419662067e-16
         ],
         [
-          7.326373202379705,
-          0.0
+          6.073762181132457,
+          -2.4929174208157303e-16
         ],
         [
-          7.4088916340702395,
-          0.0
+          6.1316244266518884,
+          -1.940528021156202e-16
         ],
         [
-          7.471438984396619,
-          0.0
+          6.18948667217132,
+          -1.653038546575198e-16
         ],
         [
-          7.533986334722999,
-          0.0
+          6.2473489176907515,
+          -1.484477694687603e-16
         ],
         [
-          7.596533685049379,
-          0.0
+          6.305211163210183,
+          -1.3097700820088473e-16
         ],
         [
-          7.659081035375759,
-          0.0
+          6.374869724777001,
+          -1.0890223967399948e-16
         ],
         [
-          7.748666795076123,
-          0.0
+          6.44452828634382,
+          -8.830664039665568e-17
         ],
         [
-          7.759103537845691,
-          0.0
+          6.514186847910638,
+          -7.415302824964199e-17
         ],
         [
-          7.769540280615259,
-          0.0
+          6.583845409477457,
+          -6.736714750008477e-17
         ],
         [
-          7.779977023384827,
-          0.0
+          6.653503971044275,
+          -6.43784655527258e-17
         ],
         [
-          7.800850508923962,
-          0.0
+          6.723162532611093,
+          -6.078620992475248e-17
         ],
         [
-          7.821723994463097,
-          0.0
+          6.792821094177912,
+          -5.2953509813221945e-17
         ],
         [
-          7.842597480002232,
-          0.0
+          6.856149583247434,
+          -4.5436380090323554e-17
         ],
         [
-          7.900172892552435,
-          0.0
+          6.919478072316956,
+          -3.969572930130365e-17
         ],
         [
-          7.957748305102638,
-          0.0
+          6.982806561386478,
+          1.6754021472674786e-17
         ],
         [
-          8.01532371765284,
-          0.0
+          7.046135050456,
+          8.570418690651645e-17
         ],
         [
-          8.072899130203044,
-          0.0
+          7.109463539525522,
+          1.4394762422917338e-16
         ],
         [
-          8.14886572486838,
-          0.0
+          7.172792028595044,
+          1.7306106757256024e-16
         ],
         [
-          8.224832319533714,
-          0.0
+          7.236120517664566,
+          1.6625930568871772e-16
         ],
         [
-          8.30079891419905,
-          0.0
+          7.299449006734088,
+          1.2837553490166296e-16
         ],
         [
-          8.376765508864384,
-          0.0
+          7.36277749580361,
+          7.259802256509581e-17
         ],
         [
-          8.45273210352972,
-          0.0
+          7.441907419493829,
+          -1.1039986190835265e-17
         ],
         [
-          8.5564809550127,
-          0.0
+          7.521037343184047,
+          -7.197247041333851e-17
         ],
         [
-          8.632458997358304,
-          0.0
+          7.600167266874266,
+          -8.55360293866947e-17
         ],
         [
-          8.708437039703908,
-          0.0
+          7.696303025687341,
+          -5.249696050279643e-17
         ],
         [
-          8.784415082049511,
-          0.0
+          7.7924387845004155,
+          1.0758096860506145e-17
         ],
         [
-          8.860393124395115,
-          0.0
+          7.88857454331349,
+          4.4988716596126054e-17
         ],
         [
-          8.936371166740718,
-          0.0
+          7.984710302126565,
+          2.2211392466714686e-17
         ],
         [
-          9.012349209086322,
-          0.0
+          8.08084606093964,
+          -4.015341504917973e-17
         ],
         [
-          9.088327251431926,
-          0.0
+          8.176981819752715,
+          -9.750323858394503e-17
         ],
         [
-          9.16430529377753,
-          0.0
+          8.27311757856579,
+          -1.124491028135385e-16
         ],
         [
-          9.255988954542772,
-          0.0
+          8.374791072592975,
+          -1.0289323679305868e-16
         ],
         [
-          9.329184490076974,
-          0.0
+          8.47646456662016,
+          -8.407415178428047e-17
         ],
         [
-          9.402380025611176,
-          0.0
+          8.578138060647346,
+          -6.619656849662491e-17
         ],
         [
-          9.475575561145378,
-          0.0
+          8.679811554674531,
+          -5.1622231626452325e-17
         ],
         [
-          9.54877109667958,
-          0.0
+          8.781485048701716,
+          -4.024140812352014e-17
         ],
         [
-          9.621966632213782,
-          0.0
+          8.883158542728902,
+          -3.144013252118553e-17
         ],
         [
-          9.69992497595067,
-          0.0
+          9.00524652036951,
+          -2.36087902578223e-17
         ],
         [
-          9.77788331968756,
-          0.0
+          9.12733449801012,
+          -1.785074438098817e-17
         ],
         [
-          9.855841663424448,
-          0.0
+          9.249422475650729,
+          -1.3517142520976806e-17
         ],
         [
-          9.933800007161336,
-          0.0
+          9.371510453291338,
+          -1.0244547099609183e-17
         ],
         [
-          10.011758350898225,
-          0.0
+          9.493598430931947,
+          -7.784852842064411e-18
         ],
         [
-          10.089716694635113,
-          0.0
+          9.615686408572556,
+          -5.939641428894558e-18
         ],
         [
-          10.167675038372002,
-          0.0
+          9.638495054883064,
+          -5.64888232317032e-18
         ],
         [
-          10.260259956542143,
-          0.0
+          9.661303701193573,
+          -5.372999175608098e-18
         ],
         [
-          10.331983881553601,
-          0.0
+          9.684112347504081,
+          -5.111191967360135e-18
         ],
         [
-          10.403707806565059,
-          0.0
+          9.729729640125099,
+          -4.768627791707355e-18
         ],
         [
-          10.475431731576517,
-          0.0
+          9.775346932746116,
+          -3.348400641665885e-18
         ],
         [
-          10.570210949134573,
-          0.0
+          9.820964225367133,
+          -2.349091385978976e-18
         ],
         [
-          10.664990166692629,
-          0.0
+          9.921906879777866,
+          -1.2554222931970311e-18
         ],
         [
-          10.759769384250685,
-          0.0
+          10.004312108890508,
+          -9.127215677074973e-19
         ],
         [
-          10.854548601808741,
-          0.0
+          10.08671733800315,
+          -7.230896211348609e-19
         ],
         [
-          10.949327819366797,
-          0.0
+          10.16912256711579,
+          -5.9455308653679785e-19
         ],
         [
-          11.044107036924853,
-          0.0
+          10.318508402311611,
+          -4.8060020969753e-19
         ],
         [
-          11.138886254482909,
-          0.0
+          10.416310959001898,
+          -4.0801578326969607e-19
         ],
         [
-          11.223078569708694,
-          0.0
+          10.514113515692184,
+          -3.3704174725582596e-19
         ],
         [
-          11.307270884934479,
-          0.0
+          10.61191607238247,
+          -2.7585524953323826e-19
         ],
         [
-          11.391463200160263,
-          0.0
+          10.709718629072757,
+          -2.2642515421410995e-19
         ],
         [
-          11.526298565803183,
-          0.0
+          10.84073505366698,
+          -1.7446483959835822e-19
         ],
         [
-          11.629928166907957,
-          0.0
+          10.935791309767657,
+          -1.4513226948732057e-19
         ],
         [
-          11.733557768012732,
-          0.0
+          11.030847565868333,
+          -1.2104714278806175e-19
         ],
         [
-          11.837187369117506,
-          0.0
+          11.12590382196901,
+          -1.0112381992403514e-19
         ],
         [
-          11.940816970222281,
-          0.0
+          11.220960078069686,
+          -8.459865928168152e-20
         ],
         [
-          12.064752353445058,
-          0.0
+          11.34293278943959,
+          -6.746856733329825e-20
         ],
         [
-          12.188687736667836,
-          0.0
+          11.4367198655186,
+          -5.679176378827257e-20
         ],
         [
-          12.312623119890613,
-          0.0
+          11.530506941597611,
+          -4.7876981421472464e-20
         ],
         [
-          12.43655850311339,
-          0.0
+          11.624294017676622,
+          -4.042446826890406e-20
         ],
         [
-          12.560493886336168,
-          0.0
+          11.718081093755632,
+          -3.418566670867051e-20
         ],
         [
-          12.684429269558946,
-          0.0
+          11.830682395509069,
+          -2.801576300051892e-20
         ],
         [
-          12.808364652781723,
-          0.0
+          11.943283697262505,
+          -2.3012390039563533e-20
         ],
         [
-          12.831782867710663,
-          0.0
+          12.055884999015941,
+          -1.8944236117129408e-20
         ],
         [
-          12.855201082639603,
-          0.0
+          12.168486300769377,
+          -1.5628634041756186e-20
         ],
         [
-          12.878619297568543,
-          0.0
+          12.29994439393496,
+          -1.2521020015626418e-20
         ],
         [
-          12.925455727426423,
-          0.0
+          12.404633593778348,
+          -1.0514085262209481e-20
         ],
         [
-          12.972292157284302,
-          0.0
+          12.509322793621736,
+          -8.843778983363264e-21
         ],
         [
-          13.019128587142182,
-          0.0
+          12.614011993465125,
+          -7.451845046954531e-21
         ],
         [
-          13.153906925069139,
-          0.0
+          12.718701193308513,
+          -6.290106618000004e-21
         ],
         [
-          13.288685262996095,
-          0.0
+          12.865684810686352,
+          -4.61453229864659e-21
         ],
         [
-          13.423463600923052,
-          0.0
+          12.973565119592086,
+          -3.6829593807304726e-21
         ],
         [
-          13.558241938850008,
-          0.0
+          13.08144542849782,
+          -3.049158597757334e-21
         ],
         [
-          13.693020276776965,
-          0.0
+          13.189325737403555,
+          -2.584014687956124e-21
         ],
         [
-          13.827798614703921,
-          0.0
+          13.29720604630929,
+          -2.45651535903658e-21
         ],
         [
-          13.962576952630878,
-          0.0
+          13.455915925693203,
+          -3.556165270258728e-20
         ],
         [
-          14.097355290557834,
-          0.0
+          13.572668910835402,
+          -1.4584483239128812e-18
         ],
         [
-          14.23213362848479,
-          0.0
+          13.6894218959776,
+          -3.461608283001385e-18
         ],
         [
-          14.366911966411747,
-          0.0
+          13.8061748811198,
+          -5.207345458538284e-18
         ],
         [
-          14.54025856584105,
-          0.0
+          13.922927866261999,
+          -6.08223573554167e-18
         ],
         [
-          14.682392980564643,
-          0.0
+          14.085961813353116,
+          -5.155725495574271e-18
         ],
         [
-          14.824527395288236,
-          0.0
+          14.204687031875425,
+          -2.7120301466934014e-18
         ],
         [
-          14.966661810011828,
-          0.0
+          14.323412250397734,
+          -2.2497613156774795e-19
         ],
         [
-          15.108796224735421,
-          0.0
+          14.442137468920043,
+          1.6774153453060407e-18
         ],
         [
-          15.286616031474669,
-          0.0
+          14.560862687442352,
+          2.7947757570662684e-18
         ],
         [
-          15.464435838213916,
-          0.0
+          14.727812813776477,
+          2.5126295183618325e-18
         ],
         [
-          15.642255644953163,
-          0.0
+          14.852763845864722,
+          8.19387856027903e-19
         ],
         [
-          15.82007545169241,
-          0.0
+          14.977714877952966,
+          -1.1122205678927233e-18
         ],
         [
-          15.997895258431658,
-          0.0
+          15.10266591004121,
+          -2.715907314294262e-18
         ],
         [
-          16.175715065170905,
-          0.0
+          15.227616942129455,
+          -3.688732781102156e-18
         ],
         [
-          16.353534871910153,
-          0.0
+          15.39474055277627,
+          -3.596095626708486e-18
         ],
         [
-          16.5313546786494,
-          0.0
+          15.526750000917001,
+          -2.2852355125599325e-18
         ],
         [
-          16.709174485388647,
-          0.0
+          15.658759449057733,
+          -6.250629874775414e-19
         ],
         [
-          16.886994292127895,
-          0.0
+          15.790768897198465,
+          1.0009654751418997e-18
         ],
         [
-          17.0827216691956,
-          0.0
+          15.922778345339196,
+          2.2104021240652204e-18
         ],
         [
-          17.245756216665097,
-          0.0
+          16.079671368014623,
+          2.5438289908276766e-18
         ],
         [
-          17.408790764134594,
-          0.0
+          16.23656439069005,
+          2.2695952708778585e-18
         ],
         [
-          17.57182531160409,
-          0.0
+          16.393457413365475,
+          1.8618698550759735e-18
         ],
         [
-          17.734859859073588,
-          0.0
+          16.5503504360409,
+          1.5135336393168895e-18
         ],
         [
-          17.87633414755382,
-          0.0
+          16.72307251287968,
+          1.2568025176852397e-18
         ],
         [
-          17.989632326456782,
-          0.0
+          16.895794589718456,
+          1.090282443941422e-18
         ],
         [
-          18.102930505359744,
-          0.0
+          17.068516666557233,
+          9.411089747399366e-19
         ],
         [
-          18.216228684262706,
-          0.0
+          17.24123874339601,
+          7.918746536312933e-19
         ],
         [
-          18.392123725075212,
-          0.0
+          17.413960820234788,
+          6.581275739139256e-19
         ],
         [
-          18.568018765887718,
-          0.0
+          17.60482627556807,
+          5.86106711501183e-19
         ],
         [
-          18.743913806700224,
-          0.0
+          17.79569173090135,
+          -6.213104356390838e-18
         ],
         [
-          18.91980884751273,
-          0.0
+          17.98655718623463,
+          -1.558054241453457e-17
         ],
         [
-          19.13456671816614,
-          0.0
+          18.17742264156791,
+          -1.9707660599523863e-17
         ],
         [
-          19.349324588819552,
-          0.0
+          18.368288096901193,
+          -1.7073330440947704e-17
         ],
         [
-          19.564082459472964,
-          0.0
+          18.559153552234473,
+          -1.0376314934293168e-17
         ],
         [
-          19.778840330126375,
-          0.0
+          18.750019007567754,
+          -3.0519176888479064e-18
         ],
         [
-          19.993598200779786,
-          0.0
+          18.940884462901035,
+          1.8320212808127556e-18
         ],
         [
-          20.208356071433197,
-          0.0
+          19.160009857916293,
+          2.97415603739468e-18
         ],
         [
-          20.42311394208661,
-          0.0
+          19.37913525293155,
+          1.5859680314543883e-19
         ],
         [
-          20.63787181274002,
-          0.0
+          19.59826064794681,
+          -4.1513015324493554e-18
         ],
         [
-          20.89524769419444,
-          0.0
+          19.817386042962067,
+          -7.780204698905408e-18
         ],
         [
-          21.152623575648857,
-          0.0
+          20.036511437977325,
+          -9.443124166315721e-18
         ],
         [
-          21.409999457103275,
-          0.0
+          20.343119545325326,
+          -8.689648428654e-18
         ],
         [
-          21.667375338557694,
-          0.0
+          20.649727652673327,
+          -9.959011562712794e-18
         ],
         [
-          21.924751220012112,
-          0.0
+          20.95633576002133,
+          7.490170011488193e-18
         ],
         [
-          22.18212710146653,
-          0.0
+          21.26294386736933,
+          4.495788860191314e-17
         ],
         [
-          22.469164792221026,
-          0.0
+          21.56955197471733,
+          9.878845967019761e-17
         ],
         [
-          22.75620248297552,
-          0.0
+          21.876160082065333,
+          1.4235328079782255e-16
         ],
         [
-          23.043240173730016,
-          0.0
+          22.182768189413334,
+          1.4754963441185378e-16
         ],
         [
-          23.33027786448451,
-          0.0
+          22.489376296761336,
+          1.1491830495348678e-16
         ],
         [
-          23.617315555239006,
-          0.0
+          22.837549744359293,
+          6.260822066465337e-17
         ],
         [
-          23.9043532459935,
-          0.0
+          23.18572319195725,
+          4.176978182474372e-17
         ],
         [
-          24.191390936747997,
-          0.0
+          23.53389663955521,
+          8.124634777528898e-17
         ],
         [
-          24.419341542299552,
-          0.0
+          23.882070087153167,
+          1.4489829670091768e-16
         ],
         [
-          24.647292147851108,
-          0.0
+          24.230243534751125,
+          1.593122649965106e-16
         ],
         [
-          24.875242753402663,
-          0.0
+          24.578416982349083,
+          9.843363849780165e-17
         ],
         [
-          25.10319335895422,
-          0.0
+          24.92659042994704,
+          1.0359138251335119e-17
         ],
         [
-          25.331143964505774,
-          0.0
+          25.274763877545,
+          -2.4995795057443297e-17
         ],
         [
-          25.51872139829633,
-          0.0
+          25.544320922023445,
+          4.3736370799471846e-17
         ],
         [
-          25.706298832086883,
-          0.0
+          25.81387796650189,
+          2.1197614600478727e-16
         ],
         [
-          25.884966627110675,
-          0.0
+          25.885098654500275,
+          2.588843730852158e-16
         ],
         [
           25.88571428571429,
-          0.0
+          2.5925581701761344e-16
         ],
         [
-          25.891724887187262,
-          0.0
+          25.891725275535915,
+          2.589430790733685e-16
         ],
         [
-          25.897735488660235,
-          0.0
+          25.89773626535754,
+          2.5862878493544795e-16
         ],
         [
-          25.909756691606184,
-          0.0
+          25.90975824500079,
+          2.5801118864034913e-16
         ],
         [
-          25.921777894552132,
-          0.0
+          25.921780224644042,
+          2.5740739845381877e-16
         ],
         [
-          25.93379909749808,
-          0.0
+          25.933802204287293,
+          2.568092698942847e-16
         ],
         [
-          26.05401112695755,
-          0.0
+          26.05402200071982,
+          2.5160378784316435e-16
         ],
         [
-          26.17422315641702,
-          0.0
+          26.174241797152344,
+          2.4709360621722606e-16
         ],
         [
-          26.29443518587649,
-          0.0
+          26.29446159358487,
+          2.433953674505416e-16
         ],
         [
-          26.41464721533596,
-          0.0
+          26.414681390017396,
+          2.4038365248681055e-16
         ],
         [
-          26.590536971802308,
-          0.0
+          26.59056092778596,
+          2.3712662448520967e-16
         ],
         [
-          26.766426728268655,
-          0.0
+          26.76644046555452,
+          2.348402388912722e-16
         ],
         [
-          26.942316484735002,
-          0.0
+          26.942320003323083,
+          2.334301402484575e-16
         ],
         [
-          27.11820624120135,
-          0.0
+          27.118199541091645,
+          2.3260751461515445e-16
         ],
         [
-          27.294095997667696,
-          0.0
+          27.294079078860207,
+          2.3215295137049973e-16
         ],
         [
           27.38571428571429,
-          0.0
+          2.3199184067698664e-16
         ],
         [
-          27.403707346930535,
+          27.397496400123647,
           0.0
         ],
         [
-          27.42170040814678,
+          27.409278514533003,
           0.0
         ],
         [
-          27.457686530579274,
+          27.43284274335172,
           0.0
         ],
         [
-          27.493672653011767,
+          27.456406972170438,
           0.0
         ],
         [
-          27.52965877544426,
+          27.479971200989155,
           0.0
         ],
         [
-          27.722358182653522,
+          27.597382226258187,
           0.0
         ],
         [
-          27.915057589862784,
+          27.71479325152722,
           0.0
         ],
         [
-          28.107756997072045,
+          27.83220427679625,
           0.0
         ],
         [
-          28.300456404281306,
+          27.949615302065283,
           0.0
         ],
         [
-          28.59167900359794,
+          28.127223521019754,
           0.0
         ],
         [
-          28.882901602914572,
+          28.304831739974226,
           0.0
         ],
         [
-          29.174124202231205,
+          28.482439958928698,
           0.0
         ],
         [
-          29.465346801547838,
+          28.66004817788317,
           0.0
         ],
         [
-          29.75656940086447,
+          28.83765639683764,
           0.0
         ],
         [
-          30.25579246872472,
+          29.142165265211645,
           0.0
         ],
         [
-          30.75501553658497,
+          29.44667413358565,
           0.0
         ],
         [
-          31.25423860444522,
+          29.751183001959653,
           0.0
         ],
         [
-          31.75346167230547,
+          30.055691870333657,
           0.0
         ],
         [
-          32.25268474016572,
+          30.36020073870766,
           0.0
         ],
         [
-          32.75190780802597,
+          30.664709607081665,
           0.0
         ],
         [
-          33.48826295234864,
+          31.156066194366023,
           0.0
         ],
         [
-          34.224618096671314,
+          31.64742278165038,
           0.0
         ],
         [
-          34.96097324099399,
+          32.138779368934735,
           0.0
         ],
         [
-          35.69732838531666,
+          32.63013595621909,
           0.0
         ],
         [
-          36.43368352963933,
+          33.12149254350345,
           0.0
         ],
         [
-          37.18331742700439,
+          33.61284913078781,
           0.0
         ],
         [
-          37.93295132436945,
+          34.104205718072166,
           0.0
         ],
         [
-          38.682585221734506,
+          34.59556230535652,
           0.0
         ],
         [
-          39.432219119099564,
+          35.20520071519727,
           0.0
         ],
         [
-          40.18185301646462,
+          35.81483912503802,
           0.0
         ],
         [
-          41.55565606299418,
+          36.42447753487877,
           0.0
         ],
         [
-          42.92945910952374,
+          37.03411594471952,
           0.0
         ],
         [
-          44.3032621560533,
+          37.61030939313683,
           0.0
         ],
         [
-          45.67706520258286,
+          38.186502841554145,
           0.0
         ],
         [
-          47.05086824911242,
+          38.76269628997146,
           0.0
         ],
         [
-          48.62323521534373,
+          39.33888973838877,
           0.0
         ],
         [
-          50.19560218157505,
+          40.470199282925094,
           0.0
         ],
         [
-          51.76796914780636,
+          41.601508827461416,
           0.0
         ],
         [
-          53.340336114037676,
+          42.73281837199774,
           0.0
         ],
         [
-          54.91270308026899,
+          43.86412791653406,
           0.0
         ],
         [
-          55.86204148248446,
+          45.065546566682556,
           0.0
         ],
         [
-          56.811379884699925,
+          46.26696521683105,
           0.0
         ],
         [
-          57.76071828691539,
+          47.46838386697955,
           0.0
         ],
         [
-          58.71005668913086,
+          48.0644116487991,
           0.0
         ],
         [
-          59.701612671241776,
+          48.66043943061865,
           0.0
         ],
         [
-          60.69316865335269,
+          49.2564672124382,
           0.0
         ],
         [
-          61.68472463546361,
+          49.85016027085198,
           0.0
         ],
         [
-          63.019700273431596,
+          50.44385332926576,
           0.0
         ],
         [
-          64.35467591139958,
+          51.037546387679534,
           0.0
         ],
         [
-          65.68965154936757,
+          52.22602215013901,
           0.0
         ],
         [
-          67.66870000169779,
+          53.414497912598485,
           0.0
         ],
         [
-          69.647748454028,
+          54.60297367505796,
           0.0
         ],
         [
-          71.62679690635822,
+          55.78628196962012,
           0.0
         ],
         [
-          73.60427163292789,
+          56.96959026418228,
           0.0
         ],
         [
-          75.58174635949756,
+          58.15289855874444,
           0.0
         ],
         [
-          77.55922108606723,
+          59.80914674127502,
           0.0
         ],
         [
-          83.74360774187622,
+          61.465394923805604,
           0.0
         ],
         [
-          89.92799439768521,
+          63.12164310633619,
           0.0
         ],
         [
-          91.47409106163745,
+          67.96806599954927,
           0.0
         ],
         [
-          93.0201877255897,
+          69.17967172285253,
           0.0
         ],
         [
-          94.56628438954193,
+          71.60288316945908,
           0.0
         ],
         [
-          95.55174469780209,
+          74.02609461606562,
           0.0
         ],
         [
-          96.53720500606225,
+          76.44930606267216,
           0.0
         ],
         [
-          97.52266531432241,
+          82.05653011294073,
           0.0
         ],
         [
-          98.50866761324593,
+          87.6637541632093,
           0.0
         ],
         [
-          104.229915181177,
+          93.27097821347787,
           0.0
         ],
         [
-          109.95116274910808,
+          102.7701466845776,
           0.0
         ],
         [
-          115.67241031703915,
+          112.26931515567732,
           0.0
         ],
         [
-          123.80427445904986,
+          121.76848362677704,
           0.0
         ],
         [
-          131.93613860106058,
+          131.26765209787678,
           0.0
         ],
         [
-          140.0680027430713,
+          142.3439771582361,
           0.0
         ],
         [
-          148.19986688508203,
+          153.42030221859542,
           0.0
         ],
         [
-          158.3904761904762,
+          158.24761904761905,
           0.0
         ],
         [
-          158.5093989588007,
+          158.36654057116988,
           0.0
         ],
         [
-          158.62832172712518,
+          158.4854620947207,
           0.0
         ],
         [
-          159.8904761904762,
+          159.74761904761905,
           0.0
         ],
         [
-          159.89288732694692,
+          159.74948515317416,
           0.0
         ],
         [
-          159.89529846341765,
+          159.75135125872927,
           0.0
         ],
         [
-          159.90012073635913,
+          159.75508346983946,
           0.0
         ],
         [
-          159.9049430093006,
+          159.75881568094965,
           0.0
         ],
         [
-          159.9097652822421,
+          159.76254789205984,
           0.0
         ],
         [
-          159.93243780659526,
+          159.78008817979105,
           0.0
         ],
         [
-          159.95511033094843,
+          159.79762846752226,
           0.0
         ],
         [
-          159.9777828553016,
+          159.81516875525347,
           0.0
         ],
         [
-          160.00045537965477,
+          159.83270904298467,
           0.0
         ],
         [
-          160.0346633693688,
+          159.85917311481012,
           0.0
         ],
         [
-          160.0688713590828,
+          159.88563718663556,
           0.0
         ],
         [
-          160.10307934879683,
+          159.912101258461,
           0.0
         ],
         [
-          160.13728733851084,
+          159.93856533028645,
           0.0
         ],
         [
-          160.17149532822486,
+          159.9650294021119,
           0.0
         ],
         [
-          160.23106728260558,
+          160.01112136384918,
           0.0
         ],
         [
-          160.2906392369863,
+          160.05721332558647,
           0.0
         ],
         [
-          160.350211191367,
+          160.10330528732376,
           0.0
         ],
         [
-          160.40978314574772,
+          160.14939724906105,
           0.0
         ],
         [
-          160.46935510012844,
+          160.19548921079834,
           0.0
         ],
         [
-          160.52892705450915,
+          160.24158117253563,
           0.0
         ],
         [
-          160.6259323588013,
+          160.3166327641328,
           0.0
         ],
         [
-          160.72293766309343,
+          160.39168435572998,
           0.0
         ],
         [
-          160.81994296738557,
+          160.46673594732715,
           0.0
         ],
         [
-          160.9169482716777,
+          160.54178753892432,
           0.0
         ],
         [
-          161.01395357596985,
+          160.6168391305215,
           0.0
         ],
         [
-          161.110958880262,
+          160.69189072211867,
           0.0
         ],
         [
-          161.26736304673776,
+          160.81292628958846,
           0.0
         ],
         [
-          161.42376721321352,
+          160.93396185705825,
           0.0
         ],
         [
-          161.5801713796893,
+          161.05499742452804,
           0.0
         ],
         [
-          161.73657554616506,
+          161.17603299199783,
           0.0
         ],
         [
-          161.89297971264082,
+          161.29706855946762,
           0.0
         ],
         [
-          162.11653214894974,
+          161.46985652170034,
           0.0
         ],
         [
-          162.34008458525867,
+          161.64264448393305,
           0.0
         ],
         [
-          162.5636370215676,
+          161.81543244616577,
           0.0
         ],
         [
-          162.7871894578765,
+          161.9882204083985,
           0.0
         ],
         [
-          163.01074189418543,
+          162.1610083706312,
           0.0
         ],
         [
-          163.3020518484637,
+          162.38610275126362,
           0.0
         ],
         [
-          163.59336180274195,
+          162.61119713189603,
           0.0
         ],
         [
-          163.88467175702021,
+          162.83629151252845,
           0.0
         ],
         [
-          164.17598171129848,
+          163.06138589316086,
           0.0
         ],
         [
-          164.4850936705858,
+          163.3001953672972,
           0.0
         ],
         [
-          164.79420562987312,
+          163.53900484143352,
           0.0
         ],
         [
-          165.10331758916044,
+          163.77781431556986,
           0.0
         ],
         [
-          165.4129391221861,
+          164.01699558831393,
           0.0
         ],
         [
-          165.72256065521174,
+          164.256176861058,
           0.0
         ],
         [
-          166.03218218823739,
+          164.49535813380209,
           0.0
         ],
         [
-          166.34184757413777,
+          164.73455176863084,
           0.0
         ],
         [
-          167.93141144685217,
+          165.96552936083825,
           0.0
         ],
         [
-          169.52097531956656,
+          167.19650695304566,
           0.0
         ],
         [
-          171.11053919228095,
+          168.42748454525307,
           0.0
         ],
         [
-          175.76088994831585,
+          172.0340398974043,
           0.0
         ],
         [
-          180.41124070435075,
+          175.64059524955556,
           0.0
         ],
         [
-          185.06159146038564,
+          179.2471506017068,
           0.0
         ],
         [
-          202.12571753179242,
+          196.48491242496618,
           0.0
         ],
         [
-          219.1898436031992,
+          213.72267424822556,
           0.0
         ],
         [
-          236.25396967460597,
+          230.96043607148493,
           0.0
         ],
         [
-          261.9195710352043,
+          256.216460721343,
           0.0
         ],
         [
-          287.5851723958026,
+          281.4724853712011,
           0.0
         ],
         [
-          298.2290954115797,
+          298.21839993404154,
           0.0
         ]
       ],
-      "title": "M2 (Nm) x Time (S)",
+      "title": "M3 (Nm) x Time (S)",
       "inputs": [
         "Time (s)"
       ],
       "outputs": [
-        "M2 (Nm)"
+        "M3 (Nm)"
       ],
       "interpolation": "linear",
       "extrapolation": "zero",
       "signature": {
         "module": "rocketpy.mathutils.function",
-        "name": "Function"
+        "name": "Function",
+        "hash": 8532846656276
       }
     },
-    "M3": {
+    "net_thrust": {
       "source": [
         [
           0.0,
           0.0
         ],
         [
-          0.0014095582940420635,
-          0.0
-        ],
-        [
-          0.002819116588084127,
-          0.0
-        ],
-        [
-          0.005638233176168254,
-          0.0
-        ],
-        [
-          0.008457349764252381,
-          0.0
-        ],
-        [
-          0.011276466352336508,
-          0.0
-        ],
-        [
-          0.03946763223317778,
-          0.0
-        ],
-        [
-          0.04085528032083424,
-          0.0
-        ],
-        [
-          0.042242928408490706,
-          0.0
-        ],
-        [
-          0.045018224583803626,
-          0.0
-        ],
-        [
-          0.047793520759116546,
-          0.0
-        ],
-        [
-          0.05056881693442947,
-          0.0
-        ],
-        [
-          0.051535065794346184,
-          0.0
-        ],
-        [
-          0.0525013146542629,
-          0.0
-        ],
-        [
-          0.05443381237409633,
-          0.0
-        ],
-        [
-          0.056366310093929756,
-          0.0
+          0.00140955829402094,
+          2.5628332618562544
         ],
         [
-          0.05829880781376318,
-          0.0
+          0.00281911658804188,
+          5.125666523712509
         ],
         [
-          0.06066778422868188,
-          0.0
+          0.00563823317608376,
+          10.251333047425017
         ],
         [
-          0.06303676064360057,
-          0.0
+          0.00845734976412564,
+          15.37699957113753
         ],
         [
-          0.06540573705851926,
-          0.0
+          0.01127646635216752,
+          20.502666094850035
         ],
         [
-          0.08909550120770625,
-          0.0
+          0.039467632232586314,
+          71.75933133197512
         ],
         [
-          0.09280001741842829,
-          0.0
+          0.04085528032029989,
+          74.28232785509071
         ],
         [
-          0.09574786203389758,
-          0.0
+          0.04224292840801347,
+          76.80532437820631
         ],
         [
-          0.09869570664936687,
-          0.0
+          0.04501822458344063,
+          81.85131742443751
         ],
         [
-          0.10099207719472714,
-          0.0
+          0.047793520758867794,
+          86.89731047066871
         ],
         [
-          0.1032884477400874,
-          0.0
+          0.050568816934294956,
+          91.94330351689992
         ],
         [
-          0.10558481828544766,
-          0.0
+          0.051535065794208836,
+          93.70011962583425
         ],
         [
-          0.11017755937616817,
-          0.0
+          0.052501314654122715,
+          95.45693573476858
         ],
         [
-          0.11477030046688869,
-          0.0
+          0.05443381237395048,
+          98.97056795263724
         ],
         [
-          0.1193630415576092,
-          0.0
+          0.056366310093778245,
+          151.69821976458223
         ],
         [
-          0.13127045763130013,
-          0.0
+          0.05829880781360601,
+          224.81975510941658
         ],
         [
-          0.14317787370499105,
-          0.0
+          0.06066778422864502,
+          314.45670054332516
         ],
         [
-          0.14995992644651876,
-          0.0
+          0.06303676064368403,
+          404.09364597723373
         ],
         [
-          0.1542011028620784,
-          0.0
+          0.06540573705872305,
+          493.7305914111423
         ],
         [
-          0.15844227927763802,
-          0.0
+          0.08909550120911316,
+          1390.100045750228
         ],
         [
-          0.16268345569319764,
-          0.0
+          0.09280001741983737,
+          1550.0010887398357
         ],
         [
-          0.1711658085243169,
-          0.0
+          0.09574786203637055,
+          1734.2413772731593
         ],
         [
-          0.17964816135543615,
-          0.0
+          0.09869570665290373,
+          1918.4816658064824
         ],
         [
-          0.1881305141865554,
-          0.0
+          0.10099207719695144,
+          2003.9683087878057
         ],
         [
-          0.19446574773727407,
-          0.0
+          0.10328844774099916,
+          2013.1537909639967
         ],
         [
-          0.20080098128799273,
-          0.0
+          0.10558481828504687,
+          2022.3392731401875
         ],
         [
-          0.2056611859339936,
-          0.0
+          0.1101775593731423,
+          2040.7102374925691
         ],
         [
-          0.21052139057999447,
-          0.0
+          0.11477030046123773,
+          2059.081201844951
         ],
         [
-          0.21538159522599534,
-          0.0
+          0.11936304154933317,
+          2077.4521661973326
         ],
         [
-          0.22510200451799706,
-          0.0
+          0.1312706469438581,
+          2125.0825877754323
         ],
         [
-          0.23482241380999877,
-          0.0
+          0.14317825233838302,
+          2172.713009353532
         ],
         [
-          0.24454282310200048,
-          0.0
+          0.1499601229088181,
+          2199.8404916352724
         ],
         [
-          0.2542632323940022,
-          0.0
+          0.1542012180187087,
+          2166.3902558503305
         ],
         [
-          0.35146732531401936,
-          0.0
+          0.1584423131285993,
+          2132.4614949712054
         ],
         [
-          0.3632465986442917,
-          0.0
+          0.1626834082384899,
+          2098.532734092081
         ],
         [
-          0.3693545968582991,
-          0.0
+          0.1711655984582711,
+          2030.6752123338313
         ],
         [
-          0.37546259507230645,
-          0.0
+          0.17964778867805228,
+          1962.8176905755818
         ],
         [
-          0.3876785915003212,
-          0.0
+          0.18812997889783348,
+          1894.9601688173323
         ],
         [
-          0.39989458792833593,
-          0.0
+          0.19446537171097383,
+          1844.2770263122093
         ],
         [
-          0.4121105843563507,
-          0.0
+          0.20080076452411422,
+          1800.400382262057
         ],
         [
-          0.4714932108541475,
-          0.0
+          0.20566109450366143,
+          1802.8305472518307
         ],
         [
-          0.5078257800637102,
-          0.0
+          0.21052142448320865,
+          1805.2607122416043
         ],
         [
-          0.5343429255049618,
-          0.0
+          0.21538175446275587,
+          1807.690877231378
         ],
         [
-          0.5608600709462134,
-          0.0
+          0.22510241442185028,
+          1812.5512072109252
         ],
         [
-          0.587377216387465,
-          0.0
+          0.23482307438094469,
+          1817.4115371904722
         ],
         [
-          0.6404115072699682,
-          0.0
+          0.2445437343400391,
+          1822.2718671700195
         ],
         [
-          0.6934457981524714,
-          0.0
+          0.2542643942991335,
+          1827.1321971495668
         ],
         [
-          0.7464800890349746,
-          0.0
+          0.3514709938900776,
+          1875.735496945039
         ],
         [
-          0.7995143799174779,
-          0.0
+          0.36324670161934375,
+          1881.6233508096718
         ],
         [
-          0.8131556786423583,
-          0.0
+          0.3693547037882063,
+          1884.6773518941031
         ],
         [
-          0.8267969773672387,
-          0.0
+          0.3754627059570688,
+          1887.7313529785345
         ],
         [
-          0.8404382760921191,
-          0.0
+          0.3876787102947939,
+          1893.8393551473969
         ],
         [
-          0.8773817713324279,
-          0.0
+          0.39989471463251897,
+          1899.9473573162595
         ],
         [
-          0.9143252665727367,
-          0.0
+          0.41211071897024404,
+          1906.055359485122
         ],
         [
-          0.9512687618130455,
-          0.0
+          0.47147904178591876,
+          1935.7395208929593
         ],
         [
-          0.9671044469204755,
-          0.0
+          0.5078212847273655,
+          1951.3139758341974
         ],
         [
-          0.9987682629763311,
-          0.0
+          0.5343387025617514,
+          1955.7689020303742
         ],
         [
-          1.0182059593067265,
-          0.0
+          0.5608561203961373,
+          1960.2238282265512
         ],
         [
-          1.037643655637122,
-          0.0
+          0.5873735382305232,
+          1964.678754422728
         ],
         [
-          1.0570813519675175,
-          0.0
+          0.6404083738992948,
+          1973.5886068150814
         ],
         [
-          1.0878522163238507,
-          0.0
+          0.6934432095680665,
+          1982.4984592074352
         ],
         [
-          1.1186230806801838,
-          0.0
+          0.7464780452368381,
+          1991.4083115997887
         ],
         [
-          1.1439344065815038,
-          0.0
+          0.7995128809056098,
+          2000.3181639921424
         ],
         [
-          1.1692457324828238,
-          0.0
+          0.813164227469089,
+          2002.611590214807
         ],
         [
-          1.1945570583841438,
-          0.0
+          0.8268155740325682,
+          2004.9050164374714
         ],
         [
-          1.2316667865519533,
-          0.0
+          0.8404669205960474,
+          2007.198442660136
         ],
         [
-          1.2687765147197627,
-          0.0
+          0.8775732859954444,
+          2013.4323120472347
         ],
         [
-          1.3058862428875722,
-          0.0
+          0.9146796513948413,
+          2019.6661814343333
         ],
         [
-          1.3429959710553816,
-          0.0
+          0.9517860167942382,
+          2025.900050821432
         ],
         [
-          1.4022433435144068,
-          0.0
+          0.9674325642455079,
+          2028.5286707932453
         ],
         [
-          1.447124093183637,
-          0.0
+          0.9990075872778321,
+          2033.8332746626759
         ],
         [
-          1.4920048428528674,
-          0.0
+          1.0183793592598076,
+          2032.750203570333
         ],
         [
-          1.5261259080406766,
-          0.0
+          1.037751131241783,
+          2031.4329230755588
         ],
         [
-          1.5602469732284858,
-          0.0
+          1.0571229032237586,
+          2030.1156425807844
         ],
         [
-          1.594368038416295,
-          0.0
+          1.0878788324799102,
+          2028.024239391366
         ],
         [
-          1.6284891036041043,
-          0.0
+          1.118634761736062,
+          2025.9328362019478
         ],
         [
-          1.6626101687919135,
-          0.0
+          1.1439443303803107,
+          2024.211785534139
         ],
         [
-          1.6967312339797227,
-          0.0
+          1.1692538990245596,
+          2022.49073486633
         ],
         [
-          1.730852299167532,
-          0.0
+          1.1945634676688084,
+          2020.769684198521
         ],
         [
-          1.770204581699234,
-          0.0
+          1.2316568052102488,
+          2018.2473372457032
         ],
         [
-          1.809556864230936,
-          0.0
+          1.2687501427516892,
+          2015.7249902928852
         ],
         [
-          1.8489091467626382,
-          0.0
+          1.3058434802931296,
+          2013.2026433400672
         ],
         [
-          1.8882614292943403,
-          0.0
+          1.34293681783457,
+          2010.6802963872492
         ],
         [
-          1.9276137118260424,
-          0.0
+          1.4021386812930872,
+          2006.65456967207
         ],
         [
-          1.9669659943577444,
-          0.0
+          1.447031703480718,
+          2003.6018441633112
         ],
         [
-          2.0063182768894463,
-          0.0
+          1.491924725668349,
+          2000.5491186545523
         ],
         [
-          2.0456705594211484,
-          0.0
+          1.5260726318617992,
+          1994.7854736276402
         ],
         [
-          2.0850228419528505,
-          0.0
+          1.5602205380552494,
+          1987.9558923889501
         ],
         [
-          2.1243751244845526,
-          0.0
+          1.5943684442486996,
+          1981.12631115026
         ],
         [
-          2.1637274070162547,
-          0.0
+          1.6285163504421498,
+          1974.29672991157
         ],
         [
-          2.2030796895479567,
-          0.0
+          1.6626642566356,
+          1967.46714867288
         ],
         [
-          2.242431972079659,
-          0.0
+          1.6968121628290502,
+          1960.63756743419
         ],
         [
-          2.281784254611361,
-          0.0
+          1.7309600690225004,
+          1953.8079861955
         ],
         [
-          2.321136537143063,
-          0.0
+          1.770308643380365,
+          1945.938271323927
         ],
         [
-          2.360488819674765,
-          0.0
+          1.8096572177382295,
+          1938.0685564523542
         ],
         [
-          2.399841102206467,
-          0.0
+          1.849005792096094,
+          1930.1988415807812
         ],
         [
-          2.4391933847381693,
-          0.0
+          1.8883543664539586,
+          1922.3291267092084
         ],
         [
-          2.4785456672698714,
-          0.0
+          1.9277029408118231,
+          1914.4594118376353
         ],
         [
-          2.5178979498015734,
-          0.0
+          1.9670515151696877,
+          1906.5896969660625
         ],
         [
-          2.5572502323332755,
-          0.0
+          2.006400089527552,
+          1898.2079749322854
         ],
         [
-          2.5966025148649776,
-          0.0
+          2.0457486638854165,
+          1887.1903741120834
         ],
         [
-          2.6359547973966797,
-          0.0
+          2.085097238243281,
+          1876.1727732918814
         ],
         [
-          2.675307079928382,
-          0.0
+          2.124445812601145,
+          1865.1551724716794
         ],
         [
-          2.714659362460084,
-          0.0
+          2.1637943869590095,
+          1854.1375716514774
         ],
         [
-          2.7466638251883717,
-          0.0
+          2.203142961316874,
+          1843.1199708312754
         ],
         [
-          2.7786682879166595,
-          0.0
+          2.242491535674738,
+          1832.1023700110734
         ],
         [
-          2.8106727506449474,
-          0.0
+          2.2818401100326025,
+          1821.0847691908714
         ],
         [
-          2.842677213373235,
-          0.0
+          2.3211886843904668,
+          1810.0671683706694
         ],
         [
-          2.874681676101523,
-          0.0
+          2.360537258748331,
+          1799.0495675504674
         ],
         [
-          2.9108918137851214,
-          0.0
+          2.3998858331061954,
+          1788.0319667302654
         ],
         [
-          2.9402847513530936,
-          0.0
+          2.4392344074640597,
+          1777.0143659100634
         ],
         [
-          2.9637983886571173,
-          0.0
+          2.478582981821924,
+          1765.9967650898614
         ],
         [
-          2.987312025961141,
-          0.0
+          2.5179315561797884,
+          1757.3102665730316
         ],
         [
-          2.9914721939592726,
-          0.0
+          2.5572801305376527,
+          1751.407980419352
         ],
         [
-          2.995632361957404,
-          0.0
+          2.596628704895517,
+          1745.5056942656724
         ],
         [
-          2.9997925299555357,
-          0.0
+          2.6359772792533813,
+          1739.6034081119928
         ],
         [
-          3.0010806713261253,
-          0.0
+          2.6753258536112456,
+          1733.7011219583133
         ],
         [
-          3.002368812696715,
-          0.0
+          2.71467442796911,
+          1727.7988358046334
         ],
         [
-          3.0049450954378942,
-          0.0
+          2.746682540487563,
+          1722.9976189268655
         ],
         [
-          3.0075213781790735,
-          0.0
+          2.778690653006016,
+          1718.1964020490975
         ],
         [
-          3.031179520120233,
-          0.0
+          2.810698765524469,
+          1713.3951851713296
         ],
         [
-          3.0548376620613924,
-          0.0
+          2.842706878042922,
+          1708.5939682935616
         ],
         [
-          3.078495804002552,
-          0.0
+          2.874714990561375,
+          1703.7927514157936
         ],
         [
-          3.1021539459437113,
-          0.0
+          2.9109277644238576,
+          1694.5361177880711
         ],
         [
-          3.1205915242496687,
-          0.0
+          2.940339896156497,
+          1679.8300519217516
         ],
         [
-          3.139029102555626,
-          0.0
+          2.9638563968017557,
+          1668.0718015991222
         ],
         [
-          3.1574666808615834,
-          0.0
+          2.9873728974470146,
+          1656.3135512764927
         ],
         [
-          3.1943418374734978,
-          0.0
+          2.991532758872659,
+          1654.2336205636707
         ],
         [
-          3.223214302746968,
-          0.0
+          2.995692620298303,
+          1652.1536898508484
         ],
         [
-          3.252086768020438,
-          0.0
+          2.999852481723947,
+          1650.0737591380264
         ],
         [
-          3.2809592332939084,
-          0.0
+          3.0011406359017885,
+          1645.7416259666563
         ],
         [
-          3.2861061530217075,
-          0.0
+          3.00242879007963,
+          1640.9325170360487
         ],
         [
-          3.2912530727495066,
-          0.0
+          3.0050050984353125,
+          1631.3142991748334
         ],
         [
-          3.2963999924773058,
-          0.0
+          3.007581406790995,
+          1621.696081313618
         ],
         [
-          3.3042992470019175,
-          0.0
+          3.0312400452524226,
+          1533.3704977242887
         ],
         [
-          3.312198501526529,
-          0.0
+          3.05489868371385,
+          1445.0449141349595
         ],
         [
-          3.320097756051141,
-          0.0
+          3.0785573221752776,
+          1356.7193305456303
         ],
         [
-          3.329990894740742,
-          0.0
+          3.102215960636705,
+          1268.3937469563011
         ],
         [
-          3.339884033430343,
-          0.0
+          3.120664542586555,
+          1199.5190410101948
         ],
         [
-          3.349777172119944,
-          0.0
+          3.139113124536405,
+          1130.6443350640884
         ],
         [
-          3.3683253555356067,
-          0.0
+          3.1575617064862547,
+          1061.7696291179823
         ],
         [
-          3.3868735389512694,
-          0.0
+          3.194458870385954,
+          924.0202172257713
         ],
         [
-          3.4020443640890705,
-          0.0
+          3.2233916577517485,
+          816.004477726805
         ],
         [
-          3.4113407650123997,
-          0.0
+          3.252324445117543,
+          707.9887382278387
         ],
         [
-          3.420637165935729,
-          0.0
+          3.2812572324833376,
+          599.9729987288724
         ],
         [
-          3.429933566859058,
-          0.0
+          3.2864042093564865,
+          580.7576184024499
         ],
         [
-          3.446308281894537,
-          0.0
+          3.2915511862296354,
+          561.5422380760272
         ],
         [
-          3.4626829969300164,
-          0.0
+          3.2966981631027843,
+          542.3268577496046
         ],
         [
-          3.4790577119654955,
-          0.0
+          3.3044731976480057,
+          521.9482442335893
         ],
         [
-          3.5098113349838638,
-          0.0
+          3.312248232193227,
+          507.9531820521908
         ],
         [
-          3.534175816549051,
-          0.0
+          3.3200232667384486,
+          493.9581198707922
         ],
         [
-          3.558540298114238,
-          0.0
+          3.3299608976332786,
+          476.0703842600982
         ],
         [
-          3.582904779679425,
-          0.0
+          3.3398985285281086,
+          458.1826486494042
         ],
         [
-          3.615075076269808,
-          0.0
+          3.3498361594229387,
+          440.29491303871015
         ],
         [
-          3.6472453728601906,
-          0.0
+          3.3684063767347974,
+          406.8685218773645
         ],
         [
-          3.6794156694505733,
-          0.0
+          3.386976594046656,
+          373.4421307160189
         ],
         [
-          3.711585966040956,
-          0.0
+          3.4020328166662903,
+          348.57702833359673
         ],
         [
-          3.7510748617223286,
-          0.0
+          3.4113057466050263,
+          342.08597737648154
         ],
         [
-          3.790563757403701,
-          0.0
+          3.4205786765437622,
+          335.59492641936635
         ],
         [
-          3.830052653085074,
-          0.0
+          3.429851606482498,
+          329.1038754622512
         ],
         [
-          3.862940498739986,
-          0.0
+          3.4462125806335115,
+          317.65119355654184
         ],
         [
-          3.895828344394898,
-          0.0
+          3.462573554784525,
+          306.19851165083253
         ],
         [
-          3.901564462162616,
-          0.0
+          3.4789345289355382,
+          294.74582974512316
         ],
         [
-          3.9073005799303346,
-          0.0
+          3.5099101021393686,
+          273.06292850244193
         ],
         [
-          3.913036697698053,
-          0.0
+          3.5343946919875657,
+          255.92371560870393
         ],
         [
-          3.924489906398398,
-          0.0
+          3.558879281835763,
+          238.78450271496592
         ],
         [
-          3.935943115098743,
-          0.0
+          3.58336387168396,
+          221.64528982122795
         ],
         [
-          3.947396323799088,
-          0.0
+          3.6154318916074843,
+          199.1976758747609
         ],
         [
-          3.975516795322242,
-          0.0
+          3.6474999115310087,
+          176.75006192829383
         ],
         [
-          4.003637266845396,
-          0.0
+          3.679567931454533,
+          154.3024479818268
         ],
         [
-          4.03175773836855,
-          0.0
+          3.7116359513780575,
+          131.85483403535972
         ],
         [
-          4.071718134752553,
-          0.0
+          3.750677226849746,
+          104.52594120517765
         ],
         [
-          4.111678531136556,
-          0.0
+          3.789718502321435,
+          77.19704837499557
         ],
         [
-          4.151638927520558,
-          0.0
+          3.8287597777931235,
+          49.868155544813476
         ],
         [
-          4.191599323904561,
-          0.0
+          3.867801053264812,
+          22.539262714631434
         ],
         [
-          4.247720558129715,
+          3.906842328736501,
           0.0
         ],
         [
-          4.293788946145795,
+          3.9127975041938576,
           0.0
         ],
         [
-          4.3319865166419085,
+          3.9187526796512144,
           0.0
         ],
         [
-          4.370184087138022,
+          3.9247078551085712,
           0.0
         ],
         [
-          4.408381657634136,
+          3.9366182060232844,
           0.0
         ],
         [
-          4.44657922813025,
+          3.9485285569379975,
           0.0
         ],
         [
-          4.484776798626363,
+          3.9604389078527107,
           0.0
         ],
         [
-          4.527459427885128,
+          3.9894733064604,
           0.0
         ],
         [
-          4.570142057143892,
+          4.018507705068089,
           0.0
         ],
         [
-          4.612824686402656,
+          4.047542103675778,
           0.0
         ],
         [
-          4.655507315661421,
+          4.0765765022834675,
           0.0
         ],
         [
-          4.698189944920185,
+          4.119155795005119,
           0.0
         ],
         [
-          4.752240597633832,
+          4.16173508772677,
           0.0
         ],
         [
-          4.806291250347479,
+          4.1691207712068685,
           0.0
         ],
         [
-          4.8603419030611255,
+          4.176506454686967,
           0.0
         ],
         [
-          4.914392555774772,
+          4.1838921381670655,
           0.0
         ],
         [
-          4.968443208488419,
+          4.1986635051272625,
           0.0
         ],
         [
-          5.022493861202066,
+          4.2134348720874595,
           0.0
         ],
         [
-          5.076544513915713,
+          4.2282062390476565,
           0.0
         ],
         [
-          5.13059516662936,
+          4.264323210631898,
           0.0
         ],
         [
-          5.1846458193430065,
+          4.300440182216139,
           0.0
         ],
         [
-          5.238696472056653,
+          4.33655715380038,
           0.0
         ],
         [
-          5.2927471247703,
+          4.372674125384622,
           0.0
         ],
         [
-          5.342460668455986,
+          4.416044435312633,
           0.0
         ],
         [
-          5.392174212141671,
+          4.459414745240645,
           0.0
         ],
         [
-          5.441887755827357,
+          4.502785055168657,
           0.0
         ],
         [
-          5.491601299513042,
+          4.546155365096668,
           0.0
         ],
         [
-          5.554603109165186,
+          4.58952567502468,
           0.0
         ],
         [
-          5.617604918817331,
+          4.632895984952691,
           0.0
         ],
         [
-          5.6677507107483684,
+          4.676266294880703,
           0.0
         ],
         [
-          5.717896502679406,
+          4.719636604808715,
           0.0
         ],
         [
-          5.768042294610444,
+          4.768224902129621,
           0.0
         ],
         [
-          5.818188086541482,
+          4.816813199450527,
           0.0
         ],
         [
-          5.878315251829882,
+          4.865401496771433,
           0.0
         ],
         [
-          5.928299499698518,
+          4.913989794092339,
           0.0
         ],
         [
-          5.978283747567154,
+          4.962578091413246,
           0.0
         ],
         [
-          6.02826799543579,
+          5.016300880486902,
           0.0
         ],
         [
-          6.078252243304426,
+          5.070023669560559,
           0.0
         ],
         [
-          6.14293081584079,
+          5.123746458634216,
           0.0
         ],
         [
-          6.196765840796611,
+          5.177469247707872,
           0.0
         ],
         [
-          6.250600865752432,
+          5.219601255563254,
           0.0
         ],
         [
-          6.304435890708253,
+          5.261733263418636,
           0.0
         ],
         [
-          6.3582709156640735,
+          5.3038652712740175,
           0.0
         ],
         [
-          6.433461438883678,
+          5.345997279129399,
           0.0
         ],
         [
-          6.493499513622796,
+          5.388129286984781,
           0.0
         ],
         [
-          6.553537588361913,
+          5.438594166103664,
           0.0
         ],
         [
-          6.613575663101031,
+          5.489059045222548,
           0.0
         ],
         [
-          6.6736137378401486,
+          5.539523924341431,
           0.0
         ],
         [
-          6.752474107792829,
+          5.589988803460314,
           0.0
         ],
         [
-          6.813959694855546,
+          5.6404536825791975,
           0.0
         ],
         [
-          6.875445281918263,
+          5.690918561698081,
           0.0
         ],
         [
-          6.93693086898098,
+          5.741383440816964,
           0.0
         ],
         [
-          6.998416456043697,
+          5.7918483199358475,
           0.0
         ],
         [
-          7.079711027784927,
+          5.842313199054731,
           0.0
         ],
         [
-          7.1413765714336215,
+          5.900175444574162,
           0.0
         ],
         [
-          7.203042115082316,
+          5.958037690093594,
           0.0
         ],
         [
-          7.264707658731011,
+          6.015899935613025,
           0.0
         ],
         [
-          7.326373202379705,
+          6.073762181132457,
           0.0
         ],
         [
-          7.4088916340702395,
+          6.1316244266518884,
           0.0
         ],
         [
-          7.471438984396619,
+          6.18948667217132,
           0.0
         ],
         [
-          7.533986334722999,
+          6.2473489176907515,
           0.0
         ],
         [
-          7.596533685049379,
+          6.305211163210183,
           0.0
         ],
         [
-          7.659081035375759,
+          6.374869724777001,
           0.0
         ],
         [
-          7.748666795076123,
+          6.44452828634382,
           0.0
         ],
         [
-          7.759103537845691,
+          6.514186847910638,
           0.0
         ],
         [
-          7.769540280615259,
+          6.583845409477457,
           0.0
         ],
         [
-          7.779977023384827,
+          6.653503971044275,
           0.0
         ],
         [
-          7.800850508923962,
+          6.723162532611093,
           0.0
         ],
         [
-          7.821723994463097,
+          6.792821094177912,
           0.0
         ],
         [
-          7.842597480002232,
+          6.856149583247434,
           0.0
         ],
         [
-          7.900172892552435,
+          6.919478072316956,
           0.0
         ],
         [
-          7.957748305102638,
+          6.982806561386478,
           0.0
         ],
         [
-          8.01532371765284,
+          7.046135050456,
           0.0
         ],
         [
-          8.072899130203044,
+          7.109463539525522,
           0.0
         ],
         [
-          8.14886572486838,
+          7.172792028595044,
           0.0
         ],
         [
-          8.224832319533714,
+          7.236120517664566,
           0.0
         ],
         [
-          8.30079891419905,
+          7.299449006734088,
           0.0
         ],
         [
-          8.376765508864384,
+          7.36277749580361,
           0.0
         ],
         [
-          8.45273210352972,
+          7.441907419493829,
           0.0
         ],
         [
-          8.5564809550127,
+          7.521037343184047,
           0.0
         ],
         [
-          8.632458997358304,
+          7.600167266874266,
           0.0
         ],
         [
-          8.708437039703908,
+          7.696303025687341,
           0.0
         ],
         [
-          8.784415082049511,
+          7.7924387845004155,
           0.0
         ],
         [
-          8.860393124395115,
+          7.88857454331349,
           0.0
         ],
         [
-          8.936371166740718,
+          7.984710302126565,
           0.0
         ],
         [
-          9.012349209086322,
+          8.08084606093964,
           0.0
         ],
         [
-          9.088327251431926,
+          8.176981819752715,
           0.0
         ],
         [
-          9.16430529377753,
+          8.27311757856579,
           0.0
         ],
         [
-          9.255988954542772,
+          8.374791072592975,
           0.0
         ],
         [
-          9.329184490076974,
+          8.47646456662016,
           0.0
         ],
         [
-          9.402380025611176,
+          8.578138060647346,
           0.0
         ],
         [
-          9.475575561145378,
+          8.679811554674531,
           0.0
         ],
         [
-          9.54877109667958,
+          8.781485048701716,
           0.0
         ],
         [
-          9.621966632213782,
+          8.883158542728902,
           0.0
         ],
         [
-          9.69992497595067,
+          9.00524652036951,
           0.0
         ],
         [
-          9.77788331968756,
+          9.12733449801012,
           0.0
         ],
         [
-          9.855841663424448,
+          9.249422475650729,
           0.0
         ],
         [
-          9.933800007161336,
+          9.371510453291338,
           0.0
         ],
         [
-          10.011758350898225,
+          9.493598430931947,
           0.0
         ],
         [
-          10.089716694635113,
+          9.615686408572556,
           0.0
         ],
         [
-          10.167675038372002,
+          9.638495054883064,
           0.0
         ],
         [
-          10.260259956542143,
+          9.661303701193573,
           0.0
         ],
         [
-          10.331983881553601,
+          9.684112347504081,
           0.0
         ],
         [
-          10.403707806565059,
+          9.729729640125099,
           0.0
         ],
         [
-          10.475431731576517,
+          9.775346932746116,
           0.0
         ],
         [
-          10.570210949134573,
+          9.820964225367133,
           0.0
         ],
         [
-          10.664990166692629,
+          9.921906879777866,
           0.0
         ],
         [
-          10.759769384250685,
+          10.004312108890508,
           0.0
         ],
         [
-          10.854548601808741,
+          10.08671733800315,
           0.0
         ],
         [
-          10.949327819366797,
+          10.16912256711579,
           0.0
         ],
         [
-          11.044107036924853,
+          10.318508402311611,
           0.0
         ],
         [
-          11.138886254482909,
+          10.416310959001898,
           0.0
         ],
         [
-          11.223078569708694,
+          10.514113515692184,
           0.0
         ],
         [
-          11.307270884934479,
+          10.61191607238247,
           0.0
         ],
         [
-          11.391463200160263,
+          10.709718629072757,
           0.0
         ],
         [
-          11.526298565803183,
+          10.84073505366698,
           0.0
         ],
         [
-          11.629928166907957,
+          10.935791309767657,
           0.0
         ],
         [
-          11.733557768012732,
+          11.030847565868333,
           0.0
         ],
         [
-          11.837187369117506,
+          11.12590382196901,
           0.0
         ],
         [
-          11.940816970222281,
+          11.220960078069686,
           0.0
         ],
         [
-          12.064752353445058,
+          11.34293278943959,
           0.0
         ],
         [
-          12.188687736667836,
+          11.4367198655186,
           0.0
         ],
         [
-          12.312623119890613,
+          11.530506941597611,
           0.0
         ],
         [
-          12.43655850311339,
+          11.624294017676622,
           0.0
         ],
         [
-          12.560493886336168,
+          11.718081093755632,
           0.0
         ],
         [
-          12.684429269558946,
+          11.830682395509069,
           0.0
         ],
         [
-          12.808364652781723,
+          11.943283697262505,
           0.0
         ],
         [
-          12.831782867710663,
+          12.055884999015941,
           0.0
         ],
         [
-          12.855201082639603,
+          12.168486300769377,
           0.0
         ],
         [
-          12.878619297568543,
+          12.29994439393496,
           0.0
         ],
         [
-          12.925455727426423,
+          12.404633593778348,
           0.0
         ],
         [
-          12.972292157284302,
+          12.509322793621736,
           0.0
         ],
         [
-          13.019128587142182,
+          12.614011993465125,
           0.0
         ],
         [
-          13.153906925069139,
+          12.718701193308513,
           0.0
         ],
         [
-          13.288685262996095,
+          12.865684810686352,
           0.0
         ],
         [
-          13.423463600923052,
+          12.973565119592086,
           0.0
         ],
         [
-          13.558241938850008,
+          13.08144542849782,
           0.0
         ],
         [
-          13.693020276776965,
+          13.189325737403555,
           0.0
         ],
         [
-          13.827798614703921,
+          13.29720604630929,
           0.0
         ],
         [
-          13.962576952630878,
+          13.455915925693203,
           0.0
         ],
         [
-          14.097355290557834,
+          13.572668910835402,
           0.0
         ],
         [
-          14.23213362848479,
+          13.6894218959776,
           0.0
         ],
         [
-          14.366911966411747,
+          13.8061748811198,
           0.0
         ],
         [
-          14.54025856584105,
+          13.922927866261999,
           0.0
         ],
         [
-          14.682392980564643,
+          14.085961813353116,
           0.0
         ],
         [
-          14.824527395288236,
+          14.204687031875425,
           0.0
         ],
         [
-          14.966661810011828,
+          14.323412250397734,
           0.0
         ],
         [
-          15.108796224735421,
+          14.442137468920043,
           0.0
         ],
         [
-          15.286616031474669,
+          14.560862687442352,
           0.0
         ],
         [
-          15.464435838213916,
+          14.727812813776477,
           0.0
         ],
         [
-          15.642255644953163,
+          14.852763845864722,
           0.0
         ],
         [
-          15.82007545169241,
+          14.977714877952966,
           0.0
         ],
         [
-          15.997895258431658,
+          15.10266591004121,
           0.0
         ],
         [
-          16.175715065170905,
+          15.227616942129455,
           0.0
         ],
         [
-          16.353534871910153,
+          15.39474055277627,
           0.0
         ],
         [
-          16.5313546786494,
+          15.526750000917001,
           0.0
         ],
         [
-          16.709174485388647,
+          15.658759449057733,
           0.0
         ],
         [
-          16.886994292127895,
+          15.790768897198465,
           0.0
         ],
         [
-          17.0827216691956,
+          15.922778345339196,
           0.0
         ],
         [
-          17.245756216665097,
+          16.079671368014623,
           0.0
         ],
         [
-          17.408790764134594,
+          16.23656439069005,
           0.0
         ],
         [
-          17.57182531160409,
+          16.393457413365475,
           0.0
         ],
         [
-          17.734859859073588,
+          16.5503504360409,
           0.0
         ],
         [
-          17.87633414755382,
+          16.72307251287968,
           0.0
         ],
         [
-          17.989632326456782,
+          16.895794589718456,
           0.0
         ],
         [
-          18.102930505359744,
+          17.068516666557233,
           0.0
         ],
         [
-          18.216228684262706,
+          17.24123874339601,
           0.0
         ],
         [
-          18.392123725075212,
+          17.413960820234788,
           0.0
         ],
         [
-          18.568018765887718,
+          17.60482627556807,
           0.0
         ],
         [
-          18.743913806700224,
+          17.79569173090135,
           0.0
         ],
         [
-          18.91980884751273,
+          17.98655718623463,
           0.0
         ],
         [
-          19.13456671816614,
+          18.17742264156791,
           0.0
         ],
         [
-          19.349324588819552,
+          18.368288096901193,
           0.0
         ],
         [
-          19.564082459472964,
+          18.559153552234473,
           0.0
         ],
         [
-          19.778840330126375,
+          18.750019007567754,
           0.0
         ],
         [
-          19.993598200779786,
+          18.940884462901035,
           0.0
         ],
         [
-          20.208356071433197,
+          19.160009857916293,
           0.0
         ],
         [
-          20.42311394208661,
+          19.37913525293155,
           0.0
         ],
         [
-          20.63787181274002,
+          19.59826064794681,
           0.0
         ],
         [
-          20.89524769419444,
+          19.817386042962067,
           0.0
         ],
         [
-          21.152623575648857,
+          20.036511437977325,
           0.0
         ],
         [
-          21.409999457103275,
+          20.343119545325326,
           0.0
         ],
         [
-          21.667375338557694,
+          20.649727652673327,
           0.0
         ],
         [
-          21.924751220012112,
+          20.95633576002133,
           0.0
         ],
         [
-          22.18212710146653,
+          21.26294386736933,
           0.0
         ],
         [
-          22.469164792221026,
+          21.56955197471733,
           0.0
         ],
         [
-          22.75620248297552,
+          21.876160082065333,
           0.0
         ],
         [
-          23.043240173730016,
+          22.182768189413334,
           0.0
         ],
         [
-          23.33027786448451,
+          22.489376296761336,
           0.0
         ],
         [
-          23.617315555239006,
+          22.837549744359293,
           0.0
         ],
         [
-          23.9043532459935,
+          23.18572319195725,
           0.0
         ],
         [
-          24.191390936747997,
+          23.53389663955521,
           0.0
         ],
         [
-          24.419341542299552,
+          23.882070087153167,
           0.0
         ],
         [
-          24.647292147851108,
+          24.230243534751125,
           0.0
         ],
         [
-          24.875242753402663,
+          24.578416982349083,
           0.0
         ],
         [
-          25.10319335895422,
+          24.92659042994704,
           0.0
         ],
         [
-          25.331143964505774,
+          25.274763877545,
           0.0
         ],
         [
-          25.51872139829633,
+          25.544320922023445,
           0.0
         ],
         [
-          25.706298832086883,
+          25.81387796650189,
           0.0
         ],
         [
-          25.884966627110675,
+          25.885098654500275,
           0.0
         ],
         [
@@ -42797,59 +37716,59 @@
           0.0
         ],
         [
-          25.891724887187262,
+          25.891725275535915,
           0.0
         ],
         [
-          25.897735488660235,
+          25.89773626535754,
           0.0
         ],
         [
-          25.909756691606184,
+          25.90975824500079,
           0.0
         ],
         [
-          25.921777894552132,
+          25.921780224644042,
           0.0
         ],
         [
-          25.93379909749808,
+          25.933802204287293,
           0.0
         ],
         [
-          26.05401112695755,
+          26.05402200071982,
           0.0
         ],
         [
-          26.17422315641702,
+          26.174241797152344,
           0.0
         ],
         [
-          26.29443518587649,
+          26.29446159358487,
           0.0
         ],
         [
-          26.41464721533596,
+          26.414681390017396,
           0.0
         ],
         [
-          26.590536971802308,
+          26.59056092778596,
           0.0
         ],
         [
-          26.766426728268655,
+          26.76644046555452,
           0.0
         ],
         [
-          26.942316484735002,
+          26.942320003323083,
           0.0
         ],
         [
-          27.11820624120135,
+          27.118199541091645,
           0.0
         ],
         [
-          27.294095997667696,
+          27.294079078860207,
           0.0
         ],
         [
@@ -42857,563 +37776,565 @@
           0.0
         ],
         [
-          27.403707346930535,
+          27.397496400123647,
           0.0
         ],
         [
-          27.42170040814678,
+          27.409278514533003,
           0.0
         ],
         [
-          27.457686530579274,
+          27.43284274335172,
           0.0
         ],
         [
-          27.493672653011767,
+          27.456406972170438,
           0.0
         ],
         [
-          27.52965877544426,
+          27.479971200989155,
           0.0
         ],
         [
-          27.722358182653522,
+          27.597382226258187,
           0.0
         ],
         [
-          27.915057589862784,
+          27.71479325152722,
           0.0
         ],
         [
-          28.107756997072045,
+          27.83220427679625,
           0.0
         ],
         [
-          28.300456404281306,
+          27.949615302065283,
           0.0
         ],
         [
-          28.59167900359794,
+          28.127223521019754,
           0.0
         ],
         [
-          28.882901602914572,
+          28.304831739974226,
           0.0
         ],
         [
-          29.174124202231205,
+          28.482439958928698,
           0.0
         ],
         [
-          29.465346801547838,
+          28.66004817788317,
           0.0
         ],
         [
-          29.75656940086447,
+          28.83765639683764,
           0.0
         ],
         [
-          30.25579246872472,
+          29.142165265211645,
           0.0
         ],
         [
-          30.75501553658497,
+          29.44667413358565,
           0.0
         ],
         [
-          31.25423860444522,
+          29.751183001959653,
           0.0
         ],
         [
-          31.75346167230547,
+          30.055691870333657,
           0.0
         ],
         [
-          32.25268474016572,
+          30.36020073870766,
           0.0
         ],
         [
-          32.75190780802597,
+          30.664709607081665,
           0.0
         ],
         [
-          33.48826295234864,
+          31.156066194366023,
           0.0
         ],
         [
-          34.224618096671314,
+          31.64742278165038,
           0.0
         ],
         [
-          34.96097324099399,
+          32.138779368934735,
           0.0
         ],
         [
-          35.69732838531666,
+          32.63013595621909,
           0.0
         ],
         [
-          36.43368352963933,
+          33.12149254350345,
           0.0
         ],
         [
-          37.18331742700439,
+          33.61284913078781,
           0.0
         ],
         [
-          37.93295132436945,
+          34.104205718072166,
           0.0
         ],
         [
-          38.682585221734506,
+          34.59556230535652,
           0.0
         ],
         [
-          39.432219119099564,
+          35.20520071519727,
           0.0
         ],
         [
-          40.18185301646462,
+          35.81483912503802,
           0.0
         ],
         [
-          41.55565606299418,
+          36.42447753487877,
           0.0
         ],
         [
-          42.92945910952374,
+          37.03411594471952,
           0.0
         ],
         [
-          44.3032621560533,
+          37.61030939313683,
           0.0
         ],
         [
-          45.67706520258286,
+          38.186502841554145,
           0.0
         ],
         [
-          47.05086824911242,
+          38.76269628997146,
           0.0
         ],
         [
-          48.62323521534373,
+          39.33888973838877,
           0.0
         ],
         [
-          50.19560218157505,
+          40.470199282925094,
           0.0
         ],
         [
-          51.76796914780636,
+          41.601508827461416,
           0.0
         ],
         [
-          53.340336114037676,
+          42.73281837199774,
           0.0
         ],
         [
-          54.91270308026899,
+          43.86412791653406,
           0.0
         ],
         [
-          55.86204148248446,
+          45.065546566682556,
           0.0
         ],
         [
-          56.811379884699925,
+          46.26696521683105,
           0.0
         ],
         [
-          57.76071828691539,
+          47.46838386697955,
           0.0
         ],
         [
-          58.71005668913086,
+          48.0644116487991,
           0.0
         ],
         [
-          59.701612671241776,
+          48.66043943061865,
           0.0
         ],
         [
-          60.69316865335269,
+          49.2564672124382,
           0.0
         ],
         [
-          61.68472463546361,
+          49.85016027085198,
           0.0
         ],
         [
-          63.019700273431596,
+          50.44385332926576,
           0.0
         ],
         [
-          64.35467591139958,
+          51.037546387679534,
           0.0
         ],
         [
-          65.68965154936757,
+          52.22602215013901,
           0.0
         ],
         [
-          67.66870000169779,
+          53.414497912598485,
           0.0
         ],
         [
-          69.647748454028,
+          54.60297367505796,
           0.0
         ],
         [
-          71.62679690635822,
+          55.78628196962012,
           0.0
         ],
         [
-          73.60427163292789,
+          56.96959026418228,
           0.0
         ],
         [
-          75.58174635949756,
+          58.15289855874444,
           0.0
         ],
         [
-          77.55922108606723,
+          59.80914674127502,
           0.0
         ],
         [
-          83.74360774187622,
+          61.465394923805604,
           0.0
         ],
         [
-          89.92799439768521,
+          63.12164310633619,
           0.0
         ],
         [
-          91.47409106163745,
+          67.96806599954927,
           0.0
         ],
         [
-          93.0201877255897,
+          69.17967172285253,
           0.0
         ],
         [
-          94.56628438954193,
+          71.60288316945908,
           0.0
         ],
         [
-          95.55174469780209,
+          74.02609461606562,
           0.0
         ],
         [
-          96.53720500606225,
+          76.44930606267216,
           0.0
         ],
         [
-          97.52266531432241,
+          82.05653011294073,
           0.0
         ],
         [
-          98.50866761324593,
+          87.6637541632093,
           0.0
         ],
         [
-          104.229915181177,
+          93.27097821347787,
           0.0
         ],
         [
-          109.95116274910808,
+          102.7701466845776,
           0.0
         ],
         [
-          115.67241031703915,
+          112.26931515567732,
           0.0
         ],
         [
-          123.80427445904986,
+          121.76848362677704,
           0.0
         ],
         [
-          131.93613860106058,
+          131.26765209787678,
           0.0
         ],
         [
-          140.0680027430713,
+          142.3439771582361,
           0.0
         ],
         [
-          148.19986688508203,
+          153.42030221859542,
           0.0
         ],
         [
-          158.3904761904762,
+          158.24761904761905,
           0.0
         ],
         [
-          158.5093989588007,
+          158.36654057116988,
           0.0
         ],
         [
-          158.62832172712518,
+          158.4854620947207,
           0.0
         ],
         [
-          159.8904761904762,
+          159.74761904761905,
           0.0
         ],
         [
-          159.89288732694692,
+          159.74948515317416,
           0.0
         ],
         [
-          159.89529846341765,
+          159.75135125872927,
           0.0
         ],
         [
-          159.90012073635913,
+          159.75508346983946,
           0.0
         ],
         [
-          159.9049430093006,
+          159.75881568094965,
           0.0
         ],
         [
-          159.9097652822421,
+          159.76254789205984,
           0.0
         ],
         [
-          159.93243780659526,
+          159.78008817979105,
           0.0
         ],
         [
-          159.95511033094843,
+          159.79762846752226,
           0.0
         ],
         [
-          159.9777828553016,
+          159.81516875525347,
           0.0
         ],
         [
-          160.00045537965477,
+          159.83270904298467,
           0.0
         ],
         [
-          160.0346633693688,
+          159.85917311481012,
           0.0
         ],
         [
-          160.0688713590828,
+          159.88563718663556,
           0.0
         ],
         [
-          160.10307934879683,
+          159.912101258461,
           0.0
         ],
         [
-          160.13728733851084,
+          159.93856533028645,
           0.0
         ],
         [
-          160.17149532822486,
+          159.9650294021119,
           0.0
         ],
         [
-          160.23106728260558,
+          160.01112136384918,
           0.0
         ],
         [
-          160.2906392369863,
+          160.05721332558647,
           0.0
         ],
         [
-          160.350211191367,
+          160.10330528732376,
           0.0
         ],
         [
-          160.40978314574772,
+          160.14939724906105,
           0.0
         ],
         [
-          160.46935510012844,
+          160.19548921079834,
           0.0
         ],
         [
-          160.52892705450915,
+          160.24158117253563,
           0.0
         ],
         [
-          160.6259323588013,
+          160.3166327641328,
           0.0
         ],
         [
-          160.72293766309343,
+          160.39168435572998,
           0.0
         ],
         [
-          160.81994296738557,
+          160.46673594732715,
           0.0
         ],
         [
-          160.9169482716777,
+          160.54178753892432,
           0.0
         ],
         [
-          161.01395357596985,
+          160.6168391305215,
           0.0
         ],
         [
-          161.110958880262,
+          160.69189072211867,
           0.0
         ],
         [
-          161.26736304673776,
+          160.81292628958846,
           0.0
         ],
         [
-          161.42376721321352,
+          160.93396185705825,
           0.0
         ],
         [
-          161.5801713796893,
+          161.05499742452804,
           0.0
         ],
         [
-          161.73657554616506,
+          161.17603299199783,
           0.0
         ],
         [
-          161.89297971264082,
+          161.29706855946762,
           0.0
         ],
         [
-          162.11653214894974,
+          161.46985652170034,
           0.0
         ],
         [
-          162.34008458525867,
+          161.64264448393305,
           0.0
         ],
         [
-          162.5636370215676,
+          161.81543244616577,
           0.0
         ],
         [
-          162.7871894578765,
+          161.9882204083985,
           0.0
         ],
         [
-          163.01074189418543,
+          162.1610083706312,
           0.0
         ],
         [
-          163.3020518484637,
+          162.38610275126362,
           0.0
         ],
         [
-          163.59336180274195,
+          162.61119713189603,
           0.0
         ],
         [
-          163.88467175702021,
+          162.83629151252845,
           0.0
         ],
         [
-          164.17598171129848,
+          163.06138589316086,
           0.0
         ],
         [
-          164.4850936705858,
+          163.3001953672972,
           0.0
         ],
         [
-          164.79420562987312,
+          163.53900484143352,
           0.0
         ],
         [
-          165.10331758916044,
+          163.77781431556986,
           0.0
         ],
         [
-          165.4129391221861,
+          164.01699558831393,
           0.0
         ],
         [
-          165.72256065521174,
+          164.256176861058,
           0.0
         ],
         [
-          166.03218218823739,
+          164.49535813380209,
           0.0
         ],
         [
-          166.34184757413777,
+          164.73455176863084,
           0.0
         ],
         [
-          167.93141144685217,
+          165.96552936083825,
           0.0
         ],
         [
-          169.52097531956656,
+          167.19650695304566,
           0.0
         ],
         [
-          171.11053919228095,
+          168.42748454525307,
           0.0
         ],
         [
-          175.76088994831585,
+          172.0340398974043,
           0.0
         ],
         [
-          180.41124070435075,
+          175.64059524955556,
           0.0
         ],
         [
-          185.06159146038564,
+          179.2471506017068,
           0.0
         ],
         [
-          202.12571753179242,
+          196.48491242496618,
           0.0
         ],
         [
-          219.1898436031992,
+          213.72267424822556,
           0.0
         ],
         [
-          236.25396967460597,
+          230.96043607148493,
           0.0
         ],
         [
-          261.9195710352043,
+          256.216460721343,
           0.0
         ],
         [
-          287.5851723958026,
+          281.4724853712011,
           0.0
         ],
         [
-          298.2290954115797,
+          298.21839993404154,
           0.0
         ]
       ],
-      "title": "M3 (Nm) x Time (S)",
+      "title": "Net Thrust (N) x Time (S)",
       "inputs": [
         "Time (s)"
       ],
       "outputs": [
-        "M3 (Nm)"
+        "Net Thrust (N)"
       ],
       "interpolation": "linear",
       "extrapolation": "zero",
       "signature": {
         "module": "rocketpy.mathutils.function",
-        "name": "Function"
+        "name": "Function",
+        "hash": 8532846656111
       }
     },
     "signature": {
       "module": "rocketpy.simulation.flight",
-      "name": "Flight"
+      "name": "Flight",
+      "hash": 8532846519592
     }
   }
 }
\ No newline at end of file
diff --git a/tests/integration/environment/test_environment.py b/tests/integration/environment/test_environment.py
index 5802650dc..d51551397 100644
--- a/tests/integration/environment/test_environment.py
+++ b/tests/integration/environment/test_environment.py
@@ -1,5 +1,5 @@
 import time
-from datetime import date, datetime, timezone
+from datetime import date, datetime, timedelta, timezone
 from unittest.mock import patch
 
 import numpy as np
@@ -41,6 +41,21 @@ def test_era5_atmosphere(mock_show, example_spaceport_env):  # pylint: disable=u
         Example environment object to be tested.
     """
     example_spaceport_env.set_date((2018, 10, 15, 12))
+    example_spaceport_env.set_atmospheric_model(
+        type="Reanalysis",
+        file="data/weather/SpaceportAmerica_2018_ERA-5.nc",
+        dictionary="ECMWF",
+        pressure_conversion_factor="hPa",
+    )
+    assert example_spaceport_env.all_info() is None
+
+
+@patch("matplotlib.pyplot.show")
+def test_era5_atmosphere_auto_detect_pressure(mock_show, example_spaceport_env):  # pylint: disable=unused-argument
+    """Tests the Reanalysis model with the ERA5 file using the default
+    pressure_conversion_factor=None (auto-detection).
+    """
+    example_spaceport_env.set_date((2018, 10, 15, 12))
     example_spaceport_env.set_atmospheric_model(
         type="Reanalysis",
         file="data/weather/SpaceportAmerica_2018_ERA-5.nc",
@@ -146,6 +161,7 @@ def test_wind_plots_wrapping_direction(mock_show, example_plain_env):  # pylint:
     assert example_plain_env.plots.atmospheric_model() is None
 
 
+@pytest.mark.slow
 @pytest.mark.parametrize(
     "model_name",
     [
@@ -195,6 +211,42 @@ def test_gfs_atmosphere(mock_show, example_spaceport_env):  # pylint: disable=un
     assert example_spaceport_env.all_info() is None
 
 
+@pytest.mark.slow
+@patch("matplotlib.pyplot.show")
+def test_aigfs_atmosphere(mock_show, example_spaceport_env):  # pylint: disable=unused-argument
+    """Tests the Forecast model with the AIGFS file.
+
+    Parameters
+    ----------
+    mock_show : mock
+        Mock object to replace matplotlib.pyplot.show() method.
+    example_spaceport_env : rocketpy.Environment
+        Example environment object to be tested.
+    """
+    example_spaceport_env.set_atmospheric_model(type="Forecast", file="AIGFS")
+    assert example_spaceport_env.all_info() is None
+
+
+@pytest.mark.slow
+@patch("matplotlib.pyplot.show")
+def test_hrrr_atmosphere(mock_show, example_spaceport_env):  # pylint: disable=unused-argument
+    """Tests the Forecast model with the HRRR file.
+
+    Parameters
+    ----------
+    mock_show : mock
+        Mock object to replace matplotlib.pyplot.show() method.
+    example_spaceport_env : rocketpy.Environment
+        Example environment object to be tested.
+    """
+    # Sometimes the HRRR latest-model can fail due to not having at least 24
+    # hours in the future in the forecast, so we try with 12 hours in the future
+    # only.
+    example_spaceport_env.set_date(datetime.now() + timedelta(hours=12))
+    example_spaceport_env.set_atmospheric_model(type="Forecast", file="HRRR")
+    assert example_spaceport_env.all_info() is None
+
+
 @pytest.mark.slow
 @patch("matplotlib.pyplot.show")
 def test_nam_atmosphere(mock_show, example_spaceport_env):  # pylint: disable=unused-argument
@@ -256,21 +308,27 @@ def test_wyoming_sounding_atmosphere(mock_show, example_plain_env):  # pylint: d
 
     # TODO:: this should be added to the set_atmospheric_model() method as a
     #        "file" option, instead of receiving the URL as a string.
-    url = "http://weather.uwyo.edu/cgi-bin/sounding?region=samer&TYPE=TEXT%3ALIST&YEAR=2019&MONTH=02&FROM=0500&TO=0512&STNM=83779"
-    # give it at least 5 times to try to download the file
+    url = (
+        "https://weather.uwyo.edu/wsgi/sounding?"
+        "datetime=2019-02-05+00:00:00&id=83779&type=TEXT:LIST"
+    )
+    # give it at least 5 times to try to download the file, then skip instead
+    # of silently keeping the standard atmosphere and failing the assertions
     for i in range(5):
         try:
             example_plain_env.set_atmospheric_model(type="wyoming_sounding", file=url)
             break
         except Exception:  # pylint: disable=broad-except
             time.sleep(2**i)
+    else:
+        pytest.skip("Could not fetch Wyoming sounding data from weather.uwyo.edu")
     assert example_plain_env.all_info() is None
     assert abs(example_plain_env.pressure(0) - 93600.0) < 1e-8
     assert (
         abs(example_plain_env.barometric_height(example_plain_env.pressure(0)) - 722.0)
         < 1e-8
     )
-    assert abs(example_plain_env.wind_velocity_x(0) - -2.9005178894925043) < 1e-8
+    assert abs(example_plain_env.wind_velocity_x(0) - -2.9130471244363165) < 1e-8
     assert abs(example_plain_env.temperature(100) - 291.75) < 1e-8
 
 
diff --git a/tests/integration/motors/test_ring_cluster_motor.py b/tests/integration/motors/test_ring_cluster_motor.py
new file mode 100644
index 000000000..413169ae7
--- /dev/null
+++ b/tests/integration/motors/test_ring_cluster_motor.py
@@ -0,0 +1,253 @@
+# pylint: disable=invalid-name
+import numpy as np
+import pytest
+
+from rocketpy import Flight, Function, SolidMotor
+from rocketpy.motors.ring_cluster_motor import RingClusterMotor
+
+
+@pytest.fixture
+def base_motor():
+    """
+    Creates a simplified SolidMotor for testing purposes.
+    Properties:
+    - Constant Thrust: 1000 N
+    - Burn time: 5 s
+    - Dry mass: 10 kg
+    - Dry Inertia: (1.0, 1.0, 0.1)
+    """
+    thrust_curve = Function(lambda t: 1000 if t < 5 else 0, "Time (s)", "Thrust (N)")
+
+    return SolidMotor(
+        thrust_source=thrust_curve,
+        burn_time=5,
+        dry_mass=10.0,
+        dry_inertia=(1.0, 1.0, 0.1),  # Ixx, Iyy, Izz
+        grain_number=1,
+        grain_density=1000,
+        grain_outer_radius=0.05,
+        grain_initial_inner_radius=0.02,
+        grain_initial_height=0.5,
+        coordinate_system_orientation="nozzle_to_combustion_chamber",
+        nozzle_radius=0.02,
+        grain_separation=0.001,
+        grains_center_of_mass_position=0.25,
+        center_of_dry_mass_position=0.25,
+    )
+
+
+def test_cluster_initialization(base_motor):
+    """
+    Tests if the ClusterMotor initializes basic attributes correctly.
+    """
+    N = 3
+    R = 0.5
+    cluster = RingClusterMotor(motor=base_motor, number=N, radius=R)
+
+    assert cluster.number == N
+    assert cluster.radius == R
+    assert cluster.grain_outer_radius == base_motor.grain_outer_radius
+
+
+def test_cluster_mass_and_thrust_scaling(base_motor):
+    """
+    Tests if scalar and derived properties are correctly multiplied by N and that functional properties preserve their Function behavior
+    """
+    N = 4
+    R = 0.2
+    cluster = RingClusterMotor(motor=base_motor, number=N, radius=R)
+
+    assert np.isclose(cluster.thrust(1), base_motor.thrust(1) * N)
+
+    assert np.isclose(cluster.dry_mass, base_motor.dry_mass * N)
+
+    assert np.isclose(cluster.propellant_mass(0), base_motor.propellant_mass(0) * N)  # pylint: disable=not-callable
+    assert np.isclose(cluster.total_impulse, base_motor.total_impulse * N)
+    assert np.isclose(cluster.average_thrust, base_motor.average_thrust * N)
+
+
+def test_cluster_dry_inertia_steiner_theorem(base_motor):
+    """
+    Tests the implementation of the Parallel Axis Theorem (Huygens-Steiner)
+    for the static (dry) mass of the cluster.
+
+    Theoretical Formulas:
+    I_zz_cluster = N * I_zz_local + N * m * R^2
+    I_xx_cluster = N * I_xx_local + (N/2) * m * R^2  (Radial symmetry approximation)
+    """
+    N = 3
+    R = 1.0
+    cluster = RingClusterMotor(motor=base_motor, number=N, radius=R)
+
+    m_dry = base_motor.dry_mass
+    Ixx_loc = base_motor.dry_I_11
+    Izz_loc = base_motor.dry_I_33
+
+    expected_Izz = N * Izz_loc + N * m_dry * (R**2)
+
+    expected_I_trans = N * Ixx_loc + (N / 2) * m_dry * (R**2)
+
+    assert np.isclose(cluster.dry_I_33, expected_Izz)
+    assert np.isclose(cluster.dry_I_11, expected_I_trans)
+    assert np.isclose(cluster.dry_I_22, expected_I_trans)
+
+
+def test_cluster_invalid_inputs(base_motor):
+    """Tests if the validation raises errors for bad inputs."""
+    with pytest.raises(ValueError):
+        RingClusterMotor(motor=base_motor, number=1, radius=0.5)
+    with pytest.raises(ValueError):
+        RingClusterMotor(motor=base_motor, number=2, radius=-1.0)
+    with pytest.raises(TypeError):
+        RingClusterMotor(motor=base_motor, number="two", radius=0.5)
+
+
+def test_cluster_methods_and_setters(base_motor):
+    """Touches the display methods and setters to ensure coverage."""
+    cluster = RingClusterMotor(motor=base_motor, number=2, radius=0.5)
+
+    cluster.info()
+
+    cluster.draw_cluster_layout(show=False)
+    cluster.draw_cluster_layout(rocket_radius=0.1, show=False)
+
+    cluster.propellant_mass = 50.0
+    assert cluster.propellant_mass == 50.0
+    cluster.propellant_I_11 = 2.0
+    assert cluster.propellant_I_11 == 2.0
+
+
+def test_cluster_propellant_inertia_dynamic(base_motor):
+    """
+    Tests if the Steiner theorem is correctly applied dynamically
+    via exact geometric summation, especially for N=2.
+    """
+    N = 2
+    R = 0.5
+    cluster = RingClusterMotor(motor=base_motor, number=N, radius=R)
+
+    t = 0
+
+    m_prop = base_motor.propellant_mass(t)
+    Ixx_prop_loc = base_motor.propellant_I_11(t)
+    Izz_prop_loc = base_motor.propellant_I_33(t)
+
+    expected_ixx = (Ixx_prop_loc * N) + 0
+
+    expected_izz = (Izz_prop_loc * N) + (m_prop * N * R**2)
+
+    assert np.isclose(cluster.propellant_I_11(t), expected_ixx)  # pylint: disable=not-callable
+    assert np.isclose(cluster.propellant_I_33(t), expected_izz)
+
+
+def test_ring_cluster_motor_full_flight(
+    calisto_motorless,
+    calisto_nose_cone,
+    calisto_tail,
+    calisto_trapezoidal_fins,
+    example_plain_env,
+):
+    """Integration test for PR #924: a ``RingClusterMotor`` must work
+    end-to-end when mounted on a ``Rocket`` and flown to apogee. The clustered
+    motor scales the base motor's thrust and total impulse by the number of
+    motors, and the rocket must reach a positive apogee.
+
+    A lightweight base motor is used on purpose so the Calisto airframe stays
+    aerodynamically stable (positive static margin) with the extra aft mass.
+    """
+    # Lightweight base motor so the clustered aft mass keeps the rocket stable.
+    base = SolidMotor(
+        thrust_source=lambda t: 800 if t < 3 else 0,
+        burn_time=3,
+        dry_mass=0.2,
+        dry_inertia=(0.01, 0.01, 0.001),
+        grain_number=1,
+        grain_density=1700,
+        grain_outer_radius=0.02,
+        grain_initial_inner_radius=0.01,
+        grain_initial_height=0.1,
+        nozzle_radius=0.01,
+        grain_separation=0.001,
+        grains_center_of_mass_position=0.1,
+        center_of_dry_mass_position=0.1,
+        coordinate_system_orientation="nozzle_to_combustion_chamber",
+    )
+    number = 2
+    cluster = RingClusterMotor(motor=base, number=number, radius=0.03)
+
+    # Clustered thrust / total impulse scale with the number of motors.
+    assert np.isclose(cluster.thrust(1), base.thrust(1) * number)
+    assert np.isclose(cluster.total_impulse, base.total_impulse * number)
+
+    rocket = calisto_motorless
+    rocket.add_motor(cluster, position=-1.373)
+    # Add all aerodynamic surfaces at once so the intermediate (fin-less) state
+    # is never evaluated as unstable during construction.
+    rocket.add_surfaces(
+        [calisto_nose_cone, calisto_tail, calisto_trapezoidal_fins],
+        [1.160, -1.313, -1.168],
+    )
+    rocket.set_rail_buttons(
+        upper_button_position=0.082,
+        lower_button_position=-0.618,
+        angular_position=0,
+    )
+
+    # The clustered motor keeps the rocket aerodynamically stable.
+    assert rocket.static_margin(0) > 0
+
+    flight = Flight(
+        rocket=rocket,
+        environment=example_plain_env,
+        rail_length=5.2,
+        inclination=85,
+        heading=0,
+        terminate_on_apogee=True,
+    )
+
+    assert flight.rocket.motor is cluster
+    assert flight.t_final > 0
+    assert flight.apogee > flight.env.elevation
+
+
+def test_cluster_transverse_inertia_asymmetry(base_motor):
+    """For N=2 the ring cluster is not axisymmetric, so the assembled I_22 must
+    differ from I_11. For a symmetric N=4 arrangement they must match. The base
+    Motor.I_22 previously returned I_11 unconditionally, which was wrong for the
+    N=2 case the class was specifically designed to handle."""
+    cluster_2 = RingClusterMotor(motor=base_motor, number=2, radius=0.5)
+    assert not np.isclose(cluster_2.I_22(1.0), cluster_2.I_11(1.0))
+
+    cluster_4 = RingClusterMotor(motor=base_motor, number=4, radius=0.5)
+    assert np.isclose(cluster_4.I_22(1.0), cluster_4.I_11(1.0))
+
+
+def test_cluster_scales_nozzle_area_and_forwards_reference_pressure():
+    """The cluster must forward the base motor's reference_pressure and scale
+    the nozzle exit area by the number of motors, so the pressure-thrust
+    correction stays consistent with the N-scaled thrust."""
+    thrust_curve = Function(lambda t: 1000 if t < 5 else 0, "Time (s)", "Thrust (N)")
+    motor = SolidMotor(
+        thrust_source=thrust_curve,
+        burn_time=5,
+        dry_mass=10.0,
+        dry_inertia=(1.0, 1.0, 0.1),
+        grain_number=1,
+        grain_density=1000,
+        grain_outer_radius=0.05,
+        grain_initial_inner_radius=0.02,
+        grain_initial_height=0.5,
+        coordinate_system_orientation="nozzle_to_combustion_chamber",
+        nozzle_radius=0.02,
+        grain_separation=0.001,
+        grains_center_of_mass_position=0.25,
+        center_of_dry_mass_position=0.25,
+        reference_pressure=101325,
+    )
+    number = 3
+    cluster = RingClusterMotor(motor=motor, number=number, radius=0.2)
+
+    assert cluster.reference_pressure == 101325
+    assert np.isclose(cluster.nozzle_area, np.pi * motor.nozzle_radius**2 * number)
+    # Vacuum thrust must be N times the single-motor vacuum thrust.
+    assert np.isclose(cluster.vacuum_thrust(1), motor.vacuum_thrust(1) * number)
diff --git a/tests/integration/motors/test_solid_motor.py b/tests/integration/motors/test_solid_motor.py
index b2b06409c..46638cca1 100644
--- a/tests/integration/motors/test_solid_motor.py
+++ b/tests/integration/motors/test_solid_motor.py
@@ -56,3 +56,32 @@ def test_evaluate_geometry_updates_properties(cesaroni_m1670):
 
     # evaluate at intermediate time
     assert isinstance(motor.grain_inner_radius(0.5), float)
+
+
+def test_only_radial_burn_grain_geometry_time_evolution(cesaroni_m1670):
+    """Regression for PR #944 (corrected Jacobian of the ``only_radial_burn``
+    branch of ``evaluate_geometry``).
+
+    With radial-only burning the integrated grain geometry over the full burn
+    must have a constant grain height (no axial regression) and a monotonically
+    growing inner radius, bounded by the initial inner radius and the grain
+    outer radius. A wrong Jacobian corrupts this integration.
+    """
+    motor = cesaroni_m1670
+    motor.only_radial_burn = True
+    motor.evaluate_geometry()
+
+    times = np.linspace(0, motor.grain_burn_out, 30)
+    heights = np.array([motor.grain_height(t) for t in times])
+    radii = np.array([motor.grain_inner_radius(t) for t in times])
+
+    # Radial-only burn: grain height stays at its initial value the whole burn.
+    assert np.allclose(heights, motor.grain_initial_height, atol=1e-9)
+
+    # Inner radius grows monotonically (non-decreasing) and actually increases.
+    assert np.all(np.diff(radii) >= -1e-12)
+    assert radii[-1] > radii[0]
+
+    # Physical bounds on the inner radius.
+    assert np.isclose(radii[0], motor.grain_initial_inner_radius)
+    assert radii[-1] <= motor.grain_outer_radius + 1e-12
diff --git a/tests/integration/simulation/test_flight.py b/tests/integration/simulation/test_flight.py
index 66f0848a4..a69729e2f 100644
--- a/tests/integration/simulation/test_flight.py
+++ b/tests/integration/simulation/test_flight.py
@@ -4,7 +4,7 @@
 import numpy as np
 import pytest
 
-from rocketpy import Flight
+from rocketpy import Flight, HemisphericalParachute
 
 plt.rcParams.update({"figure.max_open_warning": 0})
 
@@ -149,7 +149,7 @@ def test_simpler_parachute_triggers(mock_show, example_plain_env, calisto_robust
     """
     calisto_robust.parachutes = []
 
-    _ = calisto_robust.add_parachute(
+    main = HemisphericalParachute(
         "Main",
         cd_s=10.0,
         trigger=400,
@@ -157,7 +157,7 @@ def test_simpler_parachute_triggers(mock_show, example_plain_env, calisto_robust
         lag=0,
     )
 
-    _ = calisto_robust.add_parachute(
+    drogue2 = HemisphericalParachute(
         "Drogue2",
         cd_s=5.5,
         trigger=lambda pressure, height, state: height < 800 and state[5] < 0,
@@ -165,7 +165,69 @@ def test_simpler_parachute_triggers(mock_show, example_plain_env, calisto_robust
         lag=0,
     )
 
-    _ = calisto_robust.add_parachute(
+    drogue1 = HemisphericalParachute(
+        "Drogue",
+        cd_s=1.0,
+        trigger="apogee",
+        sampling_rate=105,
+        lag=0,
+    )
+    calisto_robust.add_parachute(parachute=main)
+    calisto_robust.add_parachute(parachute=drogue1)
+    calisto_robust.add_parachute(parachute=drogue2)
+
+    test_flight = Flight(
+        rocket=calisto_robust,
+        environment=example_plain_env,
+        rail_length=5,
+        inclination=85,
+        heading=0,
+    )
+
+    assert (
+        abs(test_flight.z(test_flight.parachute_events[0][0]) - test_flight.apogee) <= 1
+    )
+    assert (
+        abs(
+            test_flight.z(test_flight.parachute_events[1][0])
+            - (800 + example_plain_env.elevation)
+        )
+        <= 1
+    )
+    assert (
+        abs(
+            test_flight.z(test_flight.parachute_events[2][0])
+            - (400 + example_plain_env.elevation)
+        )
+        <= 1
+    )
+    assert calisto_robust.all_info() is None
+    assert test_flight.all_info() is None
+
+
+# TODO: When the legacy behavior is removed, remove this test
+@patch("matplotlib.pyplot.show")
+def test_legacy_add_parachute(mock_show, example_plain_env, calisto_robust):  # pylint: disable=unused-argument
+    """This is a legacy test that repeats the tests in 'test_simpler_parachute_triggers'
+    but using the 'add_parachute' method with legacy inputs. The results should be the same.
+    """
+    calisto_robust.parachutes = []
+
+    calisto_robust.add_parachute(
+        "Main",
+        cd_s=10.0,
+        trigger=400,
+        sampling_rate=105,
+        lag=0,
+    )
+    calisto_robust.add_parachute(
+        "Drogue2",
+        cd_s=5.5,
+        trigger=lambda pressure, height, state: height < 800 and state[5] < 0,
+        sampling_rate=105,
+        lag=0,
+    )
+    calisto_robust.add_parachute(
         "Drogue",
         cd_s=1.0,
         trigger="apogee",
@@ -811,3 +873,149 @@ def test_environment_methods_accessible_in_controller(
 
     # Verify all environment methods were successfully called
     assert all(methods_called.values()), f"Not all methods called: {methods_called}"
+
+
+def test_continuous_controller_invoked_every_step(calisto_robust, example_plain_env):
+    """A continuous controller (sampling_rate=None) must be called on every
+    solver step and receive the same state_history layout as a discrete one:
+    time-prefixed rows (`[t, *state]`), one element longer than ``state``.
+    This locks in the discrete/continuous parity contract."""
+    calls = {"count": 0, "sampling_rates": set(), "row_len_matches": True}
+
+    def recording_controller(  # pylint: disable=unused-argument
+        time, sampling_rate, state, state_history, observed_variables, air_brakes
+    ):
+        calls["count"] += 1
+        calls["sampling_rates"].add(sampling_rate)
+        # state_history rows are time-prefixed: exactly one longer than state
+        if len(state_history[-1]) != len(state) + 1:
+            calls["row_len_matches"] = False
+
+    calisto_robust.parachutes = []
+    calisto_robust.add_air_brakes(
+        drag_coefficient_curve="data/rockets/calisto/air_brakes_cd.csv",
+        controller_function=recording_controller,
+        sampling_rate=None,  # continuous
+        clamp=True,
+    )
+
+    flight = Flight(
+        rocket=calisto_robust,
+        environment=example_plain_env,
+        rail_length=5.2,
+        inclination=85,
+        heading=0,
+        time_overshoot=False,
+        terminate_on_apogee=True,
+    )
+
+    assert flight.t_final > 0
+    # Called many times (once per solver step), far more than any fixed rate
+    assert calls["count"] > 50
+    # The controller always saw sampling_rate=None (continuous)
+    assert calls["sampling_rates"] == {None}
+    # And time-prefixed rows, consistent with the discrete controller path
+    assert calls["row_len_matches"]
+
+
+def test_discrete_controller_invoked_once_per_node(calisto_robust, example_plain_env):
+    """Regression for PR #949 (remove duplicate controller process).
+
+    A discrete controller must be invoked exactly once per time node. The
+    removed duplicate loop invoked it a second time back-to-back with the
+    identical simulation time, so no consecutive controller call may share the
+    same time value.
+    """
+    times = []
+
+    def recording_controller(  # pylint: disable=unused-argument
+        time, sampling_rate, state, state_history, observed_variables, air_brakes
+    ):
+        times.append(time)
+
+    calisto_robust.parachutes = []
+    calisto_robust.add_air_brakes(
+        drag_coefficient_curve="data/rockets/calisto/air_brakes_cd.csv",
+        controller_function=recording_controller,
+        sampling_rate=10,  # discrete controller
+        clamp=True,
+    )
+
+    flight = Flight(
+        rocket=calisto_robust,
+        environment=example_plain_env,
+        rail_length=5.2,
+        inclination=85,
+        heading=0,
+        time_overshoot=False,
+        terminate_on_apogee=True,
+    )
+
+    assert flight.t_final > 0
+    assert len(times) > 10
+    # The duplicate-process bug produced two consecutive calls at the same time.
+    assert all(times[i] != times[i + 1] for i in range(len(times) - 1))
+    # No node time is processed more than once over the whole flight.
+    assert len(times) == len(set(times))
+
+
+def test_acceleration_based_parachute_trigger_deploys(
+    calisto_robust, example_plain_env
+):
+    """Integration test for PR #911: a parachute whose trigger consumes the
+    acceleration vector (a 4-argument trigger with a ``u_dot`` parameter) must
+    deploy during a full flight, exercising the u_dot code path end-to-end."""
+
+    def acc_trigger(p, h, y, u_dot):  # pylint: disable=unused-argument
+        # y[5] = vertical velocity; u_dot[5] = vertical acceleration.
+        # Deploy once descending with a downward acceleration (just past apogee).
+        return y[5] < 0 and u_dot[5] < 0
+
+    calisto_robust.parachutes = []
+    chute = HemisphericalParachute(
+        name="acc_chute",
+        cd_s=10.0,
+        trigger=acc_trigger,
+        sampling_rate=100,
+        lag=0,
+    )
+    calisto_robust.add_parachute(parachute=chute)
+
+    # Do NOT terminate at apogee: the flight must descend for the trigger to fire.
+    flight = Flight(
+        rocket=calisto_robust,
+        environment=example_plain_env,
+        rail_length=5.2,
+        inclination=85,
+        heading=0,
+    )
+
+    # The acceleration (u_dot) trigger path was selected for this trigger.
+    assert getattr(chute.triggerfunc, "_expects_udot", False)
+
+    # The chute deployed, and did so essentially at apogee (first downward accel).
+    assert len(flight.parachute_events) >= 1
+    deploy_time, deployed = flight.parachute_events[0]
+    assert deployed.name == "acc_chute"
+    assert abs(flight.z(deploy_time) - flight.apogee) <= 5
+
+
+def test_to_dict_populates_parachutes_info_lazily(flight_calisto_robust):
+    """Regression: parachutes_info is filled only as a side effect of the lazy
+    post-processing pass. to_dict() must trigger that pass so the per-parachute
+    drag time series is serialized even when no post-processed property was
+    accessed first (e.g. a flight without controllers saved right after running).
+    """
+    flight = flight_calisto_robust
+
+    # Not populated yet: no post-processed property has been accessed.
+    assert flight.parachutes_info == {}
+
+    data = flight.to_dict()
+
+    # to_dict must have triggered post-processing, populating the drag series.
+    assert data["parachutes_info"]
+    assert data["parachutes_info"] is flight.parachutes_info
+    for info in data["parachutes_info"].values():
+        assert info["drag"]
+        assert info["t"]
diff --git a/tests/integration/simulation/test_monte_carlo.py b/tests/integration/simulation/test_monte_carlo.py
index 4b1b82392..98af2431d 100644
--- a/tests/integration/simulation/test_monte_carlo.py
+++ b/tests/integration/simulation/test_monte_carlo.py
@@ -236,3 +236,30 @@ def invalid_data_collector(flight):
             monte_carlo_calisto.simulate(number_of_simulations=10, append=False)
     finally:
         _post_test_file_cleanup()
+
+
+@pytest.mark.slow
+def test_monte_carlo_simulate_convergence(monte_carlo_calisto):
+    """Tests the simulate_convergence method of the MonteCarlo class.
+
+    Parameters
+    ----------
+    monte_carlo_calisto : MonteCarlo
+        The MonteCarlo object, this is a pytest fixture.
+    """
+    try:
+        ci_history = monte_carlo_calisto.simulate_convergence(
+            target_attribute="apogee",
+            target_confidence=0.95,
+            tolerance=5.0,
+            max_simulations=20,
+            batch_size=5,
+            parallel=False,
+        )
+
+        assert isinstance(ci_history, list)
+        assert all(isinstance(width, float) for width in ci_history)
+        assert len(ci_history) >= 1
+        assert monte_carlo_calisto.num_of_loaded_sims <= 20
+    finally:
+        _post_test_file_cleanup()
diff --git a/tests/integration/test_encoding.py b/tests/integration/test_encoding.py
index 38d5aef41..dc3be3432 100644
--- a/tests/integration/test_encoding.py
+++ b/tests/integration/test_encoding.py
@@ -273,10 +273,49 @@ def test_trapezoidal_fins_encoder(fin_name, request):
     assert np.isclose(fin_to_encode.tip_chord, fin_loaded.tip_chord)
     assert np.isclose(fin_to_encode.rocket_radius, fin_loaded.rocket_radius)
     assert np.isclose(fin_to_encode.sweep_length, fin_loaded.sweep_length)
-    if fin_to_encode._sweep_angle is not None and fin_loaded._sweep_angle is not None:
+    if fin_to_encode.sweep_angle is not None and fin_loaded.sweep_angle is not None:
         assert np.isclose(fin_to_encode.sweep_angle, fin_loaded.sweep_angle)
 
 
+@pytest.mark.parametrize(
+    "fin_name",
+    [
+        "calisto_trapezoidal_fin",
+        "calisto_elliptical_fin",
+        "calisto_free_form_fin",
+    ],
+)
+@pytest.mark.parametrize("include_outputs", [False, True])
+def test_individual_fin_encoder(fin_name, include_outputs, request):
+    """Test encoding an individual fin (``TrapezoidalFin``, ``EllipticalFin``
+    or ``FreeFormFin``).
+
+    Parameters
+    ----------
+    fin_name : str
+        Name of the fin fixture to encode.
+    include_outputs : bool
+        Whether to include outputs in the encoding.
+    request : pytest.FixtureRequest
+        Pytest request object.
+    """
+    fin_to_encode = request.getfixturevalue(fin_name)
+
+    json_encoded = json.dumps(
+        fin_to_encode, cls=RocketPyEncoder, include_outputs=include_outputs
+    )
+
+    fin_loaded = json.loads(json_encoded, cls=RocketPyDecoder)
+
+    assert isinstance(fin_loaded, type(fin_to_encode))
+    assert np.isclose(fin_to_encode.angular_position, fin_loaded.angular_position)
+    assert np.isclose(fin_to_encode.span, fin_loaded.span)
+    assert np.isclose(fin_to_encode.root_chord, fin_loaded.root_chord)
+    assert np.isclose(fin_to_encode.rocket_radius, fin_loaded.rocket_radius)
+    assert np.isclose(fin_to_encode.cant_angle, fin_loaded.cant_angle)
+    assert np.allclose(fin_to_encode.cp, fin_loaded.cp)
+
+
 @pytest.mark.parametrize("rocket_name", ["calisto_robust", "calisto_hybrid_modded"])
 def test_encoder_discretize(rocket_name, request):
     """Test encoding the total mass of ``rocketpy.Rocket`` with
diff --git a/tests/integration/test_rocket.py b/tests/integration/test_rocket.py
index c47096617..e36dd933e 100644
--- a/tests/integration/test_rocket.py
+++ b/tests/integration/test_rocket.py
@@ -19,7 +19,7 @@ def test_airfoil(
     calisto.add_surfaces(calisto_tail, -1.313)
 
     test_rocket.add_trapezoidal_fins(
-        2,
+        3,
         span=0.100,
         root_chord=0.120,
         tip_chord=0.040,
@@ -28,7 +28,7 @@ def test_airfoil(
         name="NACA0012",
     )
     test_rocket.add_trapezoidal_fins(
-        2,
+        3,
         span=0.100,
         root_chord=0.120,
         tip_chord=0.040,
diff --git a/tests/integration/test_sensor.py b/tests/integration/test_sensor.py
index 07b57b61b..ca9b0c8b9 100644
--- a/tests/integration/test_sensor.py
+++ b/tests/integration/test_sensor.py
@@ -11,6 +11,7 @@
 from rocketpy.sensors.barometer import Barometer
 from rocketpy.sensors.gnss_receiver import GnssReceiver
 from rocketpy.sensors.gyroscope import Gyroscope
+from rocketpy.simulation import FlightDataExporter
 
 
 def test_sensor_on_rocket(calisto_with_sensors):
@@ -107,7 +108,9 @@ def test_export_all_sensors_data(flight_calisto_with_sensors):
         Pytest fixture for the flight of the calisto rocket with a set of ideal
         sensors.
     """
-    flight_calisto_with_sensors.export_sensor_data("test_sensor_data.json")
+    FlightDataExporter(flight_calisto_with_sensors).export_sensor_data(
+        "test_sensor_data.json"
+    )
     # read the json and parse as dict
     filename = "test_sensor_data.json"
     with open(filename, "r") as f:
@@ -160,7 +163,9 @@ def test_export_single_sensor_data(flight_calisto_with_sensors):
         Pytest fixture for the flight of the calisto rocket with a set of ideal
         sensors.
     """
-    flight_calisto_with_sensors.export_sensor_data("test_sensor_data.json", "Gyroscope")
+    FlightDataExporter(flight_calisto_with_sensors).export_sensor_data(
+        "test_sensor_data.json", "Gyroscope"
+    )
     # read the json and parse as dict
     filename = "test_sensor_data.json"
     with open(filename, "r") as f:
diff --git a/tests/unit/environment/test_environment.py b/tests/unit/environment/test_environment.py
index beb6d5ac6..d56332e27 100644
--- a/tests/unit/environment/test_environment.py
+++ b/tests/unit/environment/test_environment.py
@@ -336,8 +336,8 @@ def test_resolve_dictionary_keeps_compatible_mapping(example_plain_env):
     assert resolved is gfs_mapping
 
 
-def test_resolve_dictionary_falls_back_to_legacy_mapping(example_plain_env):
-    """Fallback to a compatible built-in mapping for legacy NOMADS-style files."""
+def test_resolve_dictionary_falls_back_to_first_compatible_mapping(example_plain_env):
+    """Fallback to the first compatible built-in mapping for legacy-style files."""
     thredds_gfs_mapping = example_plain_env._Environment__weather_model_map.get("GFS")
     dataset = _DummyDataset(
         [
@@ -356,7 +356,6 @@ def test_resolve_dictionary_falls_back_to_legacy_mapping(example_plain_env):
         thredds_gfs_mapping, dataset
     )
 
-    # Explicit legacy mappings should be preferred over unrelated model mappings.
     assert resolved == example_plain_env._Environment__weather_model_map.get(
         "GFS_LEGACY"
     )
@@ -578,9 +577,10 @@ def test_set_atmospheric_model_normalizes_shortcut_case_for_forecast(example_pla
 
     called_arguments = {}
 
-    def fake_process_forecast_reanalysis(dataset, dictionary):
+    def fake_process_forecast_reanalysis(dataset, dictionary, conversion_factor):
         called_arguments["dataset"] = dataset
         called_arguments["dictionary"] = dictionary
+        called_arguments["conversion_factr"] = conversion_factor
 
     environment.process_forecast_reanalysis = fake_process_forecast_reanalysis
 
@@ -602,3 +602,108 @@ def test_set_atmospheric_model_raises_for_unknown_model_type(example_plain_env):
     # Act / Assert
     with pytest.raises(ValueError, match="Unknown model type"):
         environment.set_atmospheric_model(type="unknown_type")
+
+
+def test_wind_heading_direction_wraparound_interpolation(example_plain_env):
+    """Test that wind heading and direction interpolation wraps around correctly
+    across the 360°/0° boundary when initialized with a 2D array.
+    """
+    # Create discrete points at 1000m and 1100m
+    # 350 deg at 1000m, 10 deg at 1100m.
+    # Midpoint should be 360 deg or 0 deg, NOT 180 deg.
+    heading_data = np.array([[1000, 350], [1100, 10]])
+    direction_data = np.array([[1000, 350], [1100, 10]])
+
+    example_plain_env._Environment__set_wind_heading_function(heading_data)
+    example_plain_env._Environment__set_wind_direction_function(direction_data)
+
+    # Evaluate at midpoint (1050m)
+    mid_heading = example_plain_env.wind_heading(1050)
+    mid_direction = example_plain_env.wind_direction(1050)
+
+    # Check that it's close to 0 or 360 (which is also 0 modulo 360)
+    assert np.isclose(mid_heading, 0.0) or np.isclose(mid_heading, 360.0)
+    assert np.isclose(mid_direction, 0.0) or np.isclose(mid_direction, 360.0)
+
+    # Also test another wrap-around case, e.g. 10 to 350
+    heading_data2 = np.array([[1000, 10], [1100, 350]])
+    example_plain_env._Environment__set_wind_heading_function(heading_data2)
+    mid_heading2 = example_plain_env.wind_heading(1050)
+    assert np.isclose(mid_heading2, 0.0) or np.isclose(mid_heading2, 360.0)
+
+
+@pytest.mark.parametrize("shortcut_name", ["AIGFS", "HRRR"])
+def test_forecast_shortcut_and_dictionary_are_case_insensitive(
+    monkeypatch, shortcut_name
+):
+    """Ensure forecast shortcuts and built-in dictionaries ignore input casing."""
+    # Arrange
+    env = Environment(date=(2026, 3, 17, 12), latitude=32.99, longitude=-106.97)
+
+    sentinel_dataset = object()
+    env._Environment__atm_type_file_to_function_map["forecast"][shortcut_name] = (
+        lambda: sentinel_dataset
+    )
+
+    captured = {}
+
+    def fake_process_forecast_reanalysis(file, dictionary, conversion_factor):
+        captured["file"] = file
+        captured["dictionary"] = dictionary
+        captured["conversion_factor"] = conversion_factor
+
+    monkeypatch.setattr(
+        env, "process_forecast_reanalysis", fake_process_forecast_reanalysis
+    )
+    monkeypatch.setattr(env, "calculate_density_profile", lambda: None)
+    monkeypatch.setattr(env, "calculate_speed_of_sound_profile", lambda: None)
+    monkeypatch.setattr(env, "calculate_dynamic_viscosity", lambda: None)
+
+    # Act
+    env.set_atmospheric_model(
+        type="forecast",
+        file=shortcut_name.lower(),
+        dictionary=shortcut_name.lower(),
+    )
+
+    # Assert
+    expected_dictionary = env._Environment__weather_model_map.get(shortcut_name)
+    assert captured["file"] is sentinel_dataset
+    assert captured["dictionary"] == expected_dictionary
+    assert env.atmospheric_model_file == shortcut_name
+    assert env.atmospheric_model_dict == expected_dictionary
+
+
+def test_weather_model_mapping_get_is_case_insensitive():
+    """Ensure built-in mapping names are resolved regardless of casing."""
+    mapping = WeatherModelMapping()
+    assert mapping.get("aigfs") == mapping.get("AIGFS")
+    assert mapping.get("ecmwf_v0") == mapping.get("ECMWF_v0")
+
+
+@pytest.mark.parametrize(
+    "model, expected_factor",
+    [
+        # NOMADS-GrADS models expose pressure on the 'lev' coordinate in hPa
+        # and MUST be scaled by 100 (regression: they were forced to factor 1).
+        ("GEFS", 100),
+        ("HIRESW", 100),
+        # THREDDS (UCAR) models expose pressure on 'isobaric' already in Pa.
+        ("GFS", 1),
+        ("NAM", 1),
+        ("RAP", 1),
+        ("HRRR", 1),
+        ("AIGFS", 1),
+    ],
+)
+def test_pressure_conversion_factor_autodetect_by_model(
+    example_plain_env, model, expected_factor
+):
+    """Regression test for the GEFS/HIRESW pressure-unit bug: NOMADS-GrADS
+    models report pressure in hPa (factor 100), THREDDS models in Pa (factor 1).
+    A wrong factor silently corrupts the whole atmospheric profile (100x)."""
+    # pylint: disable=protected-access
+    factor = example_plain_env._Environment__determine_pressure_conversion_factor(
+        None, None, model
+    )
+    assert factor == expected_factor
diff --git a/tests/unit/environment/test_environment_analysis.py b/tests/unit/environment/test_environment_analysis.py
index fb86e9c04..11205ebea 100644
--- a/tests/unit/environment/test_environment_analysis.py
+++ b/tests/unit/environment/test_environment_analysis.py
@@ -161,3 +161,37 @@ def test_animation_plots(mock_show, env_analysis):  # pylint: disable=unused-arg
         HTML,
     )
     os.remove("wind_rose.gif")  # remove the files created by the method
+
+
+@pytest.mark.slow
+def test_pressure_level_wind_profile_uses_velocity_components(env_analysis):
+    """Regression for PR #1041: the redundant per-level ``wind_heading`` and
+    ``wind_direction`` functions were removed from the pressure-level data.
+
+    The surviving wind profile is expressed through ``wind_velocity_x`` /
+    ``wind_velocity_y`` (and ``wind_speed``), from which heading/direction are
+    derivable. This guards against re-introducing the removed entries and
+    checks that the surviving API is internally consistent.
+    """
+    data = env_analysis.original_pressure_level_data
+    first_date = next(iter(data))
+    first_hour = next(iter(data[first_date]))
+    hour_data = data[first_date][first_hour]
+
+    # Removed, redundant entries must not come back.
+    assert "wind_heading" not in hour_data
+    assert "wind_direction" not in hour_data
+
+    # Surviving, non-redundant wind-profile entries.
+    assert "wind_velocity_x" in hour_data
+    assert "wind_velocity_y" in hour_data
+    assert "wind_speed" in hour_data
+
+    # wind_speed must remain derivable from the velocity components. Sample at
+    # an actual grid node so interpolation and the sqrt() commute exactly.
+    grid_heights = hour_data["wind_speed"].x_array
+    height = float(grid_heights[len(grid_heights) // 2])
+    vx = hour_data["wind_velocity_x"](height)
+    vy = hour_data["wind_velocity_y"](height)
+    speed = hour_data["wind_speed"](height)
+    assert speed == pytest.approx((vx**2 + vy**2) ** 0.5, rel=1e-6)
diff --git a/tests/unit/mathutils/test_function.py b/tests/unit/mathutils/test_function.py
index 93c439def..bc28fdc61 100644
--- a/tests/unit/mathutils/test_function.py
+++ b/tests/unit/mathutils/test_function.py
@@ -1505,3 +1505,53 @@ def test_regular_grid_invalid_source_raises(bad_source, match):
             outputs=["z"],
             interpolation="regular_grid",
         )
+
+
+def test_2d_linear_interpolation_no_nan_outside_convex_hull():
+    """Test that querying a point inside the bounding box but outside the
+    convex hull does not silently return NaN.
+
+    Regression test for https://github.com/RocketPy-Team/RocketPy/issues/926.
+    The point (0.3, 0.3) lies within the axis-aligned bounding box of the
+    data but outside the convex hull, so LinearNDInterpolator would return
+    NaN without proper hull detection.
+    """
+    data = [
+        [0.0, 0.0, 0.000],
+        [0.0, 0.1, 0.100],
+        [0.0, 0.4, 0.400],
+        [0.3, 0.2, 0.150],
+    ]
+    func = Function(data, interpolation="linear")
+    result = func(0.3, 0.3)
+
+    assert not np.isnan(result), (
+        "f(0.3, 0.3) returned NaN. Point is outside the convex hull and "
+        "should be routed to extrapolation, not silently return NaN."
+    )
+
+
+def test_3d_linear_interpolation_no_nan_outside_convex_hull():
+    """Extend the convex-hull regression (issue #926) to three dimensions.
+
+    The fix in PR #969 targets N-dimensional linear interpolation, so a point
+    inside the axis-aligned bounding box but outside the convex hull must not
+    silently return NaN for 3D data either.
+    """
+    # Tetrahedron-like point cloud in the [0, 1]^3 bounding box.
+    data = [
+        [0.0, 0.0, 0.0, 0.0],
+        [1.0, 0.0, 0.0, 1.0],
+        [0.0, 1.0, 0.0, 1.0],
+        [0.0, 0.0, 1.0, 1.0],
+        [0.2, 0.2, 0.2, 0.6],
+    ]
+    func = Function(data, interpolation="linear")
+    # (0.9, 0.9, 0.9) is inside the bounding box but far outside the hull
+    # (its coordinates sum to 2.7, well beyond the x + y + z <= 1 face).
+    result = func(0.9, 0.9, 0.9)
+
+    assert not np.isnan(result), (
+        "f(0.9, 0.9, 0.9) returned NaN. Point is outside the 3D convex hull "
+        "and should be routed to extrapolation, not silently return NaN."
+    )
diff --git a/tests/unit/motors/test_genericmotor.py b/tests/unit/motors/test_genericmotor.py
index 7387189fb..7b4ff219b 100644
--- a/tests/unit/motors/test_genericmotor.py
+++ b/tests/unit/motors/test_genericmotor.py
@@ -440,3 +440,35 @@ def mock_read_fail(self, *args, **kwargs):
 
     with pytest.warns(UserWarning, match="Failed to read cached motor file"):
         GenericMotor.load_from_thrustcurve_api("M1670")
+
+
+def test_thrustcurve_api_requests_pass_timeout(monkeypatch, tmp_path):
+    """Regression for PR #940: every ThrustCurve API request must pass an
+    explicit (connect, read) timeout so the call cannot hang indefinitely."""
+    eng_path = "data/motors/cesaroni/Cesaroni_M1670.eng"
+    with open(eng_path, "rb") as f:
+        encoded = base64.b64encode(f.read()).decode("utf-8")
+
+    search_json = {"results": [{"motorId": "12345"}]}
+    download_json = {"results": [{"data": encoded}]}
+
+    captured_timeouts = []
+
+    def _capturing_get(url, **kwargs):
+        captured_timeouts.append(kwargs.get("timeout"))
+        if "search.json" in url:
+            return MockResponse(search_json)
+        if "download.json" in url:
+            return MockResponse(download_json)
+        raise RuntimeError(f"Unexpected URL: {url}")
+
+    monkeypatch.setattr(requests, "get", _capturing_get)
+    monkeypatch.setattr("rocketpy.motors.motor.CACHE_DIR", tmp_path)
+
+    GenericMotor.load_from_thrustcurve_api("M1670", no_cache=True)
+
+    assert captured_timeouts, "requests.get was never called"
+    assert all(t == (5, 30) for t in captured_timeouts), (
+        "Every ThrustCurve API request must use a (connect, read) timeout of "
+        f"(5, 30); captured timeouts were {captured_timeouts}"
+    )
diff --git a/tests/unit/motors/test_tank_geometry.py b/tests/unit/motors/test_tank_geometry.py
index ff4a525ba..e1926a7ee 100644
--- a/tests/unit/motors/test_tank_geometry.py
+++ b/tests/unit/motors/test_tank_geometry.py
@@ -1,9 +1,12 @@
+import warnings
 from pathlib import Path
 from unittest.mock import patch
 
 import numpy as np
 import pytest
 
+from rocketpy import CylindricalTank, SphericalTank
+from rocketpy.mathutils.function import Function
 from rocketpy.motors import TankGeometry
 
 PRESSURANT_PARAMS = (0.135 / 2, 0.981)
@@ -132,3 +135,127 @@ def test_tank_inertia(params, request):
 @patch("matplotlib.pyplot.show")
 def test_tank_geometry_plots_info(mock_show):  # pylint: disable=unused-argument
     assert TankGeometry({(0, 5): 1}).plots.all() is None
+
+
+def test_cylindrical_tank_radius_function_attribute():
+    """Test that CylindricalTank stores the input radius as 'radius_function'
+    and that it does not conflict with the 'radius' property (a Function of
+    height).
+    """
+    r = 0.1
+    tank = CylindricalTank(r, 2.0)
+
+    # radius_function stores the raw input scalar
+    assert tank.radius_function == r
+    # radius property is a callable Function, not the scalar
+    assert callable(tank.radius)
+    assert isinstance(tank.radius, Function)
+    # The two must differ in type
+    assert not isinstance(tank.radius_function, Function)
+
+
+def test_spherical_tank_radius_function_attribute():
+    """Test that SphericalTank stores the input radius as 'radius_function'
+    and that it does not conflict with the 'radius' property (a Function of
+    height).
+    """
+    r = 0.05
+    tank = SphericalTank(r)
+
+    # radius_function stores the raw input scalar
+    assert tank.radius_function == r
+    # radius property is a callable Function, not the scalar
+    assert callable(tank.radius)
+    assert isinstance(tank.radius, Function)
+    # The two must differ in type
+    assert not isinstance(tank.radius_function, Function)
+
+
+def test_cylindrical_tank_deprecated_radius_kwarg():
+    """Test that CylindricalTank issues a DeprecationWarning when the old
+    'radius' keyword argument is used, and still works correctly.
+    """
+    r = 0.1
+    with warnings.catch_warnings(record=True) as w:
+        warnings.simplefilter("always")
+        tank = CylindricalTank(radius=r, height=2.0)
+        assert len(w) == 1
+        assert issubclass(w[0].category, DeprecationWarning)
+        assert "radius_function" in str(w[0].message)
+
+    assert tank.radius_function == r
+
+
+def test_spherical_tank_deprecated_radius_kwarg():
+    """Test that SphericalTank issues a DeprecationWarning when the old
+    'radius' keyword argument is used, and still works correctly.
+    """
+    r = 0.05
+    with warnings.catch_warnings(record=True) as w:
+        warnings.simplefilter("always")
+        tank = SphericalTank(radius=r)
+        assert len(w) == 1
+        assert issubclass(w[0].category, DeprecationWarning)
+        assert "radius_function" in str(w[0].message)
+
+    assert tank.radius_function == r
+
+
+def test_cylindrical_tank_rejects_unknown_kwargs():
+    """The deprecated-radius **kwargs handling must not silently swallow other
+    (e.g. misspelled) keyword arguments."""
+    with pytest.raises(TypeError, match="unexpected keyword"):
+        CylindricalTank(radius_function=0.1, height=2.0, spherical_cap=True)
+
+
+def test_spherical_tank_rejects_unknown_kwargs():
+    """The deprecated-radius **kwargs handling must not silently swallow other
+    (e.g. misspelled) keyword arguments."""
+    with pytest.raises(TypeError, match="unexpected keyword"):
+        SphericalTank(radius_function=0.05, geometry_dicti={})
+
+
+def test_cylindrical_tank_to_dict_uses_radius_function_key():
+    """Test that CylindricalTank.to_dict() uses the 'radius_function' key."""
+    tank = CylindricalTank(0.1, 2.0)
+    data = tank.to_dict()
+    assert "radius_function" in data
+    assert "radius" not in data
+    assert data["radius_function"] == 0.1
+
+
+def test_spherical_tank_to_dict_uses_radius_function_key():
+    """Test that SphericalTank.to_dict() uses the 'radius_function' key."""
+    tank = SphericalTank(0.05)
+    data = tank.to_dict()
+    assert "radius_function" in data
+    assert "radius" not in data
+    assert data["radius_function"] == 0.05
+
+
+def test_cylindrical_tank_from_dict_deprecated_radius_key():
+    """Test that CylindricalTank.from_dict() issues a DeprecationWarning when
+    the serialized data contains the old 'radius' key.
+    """
+    old_data = {"radius": 0.1, "height": 2.0, "spherical_caps": False}
+    with warnings.catch_warnings(record=True) as w:
+        warnings.simplefilter("always")
+        tank = CylindricalTank.from_dict(old_data)
+        assert len(w) == 1
+        assert issubclass(w[0].category, DeprecationWarning)
+
+    assert tank.radius_function == 0.1
+
+
+def test_spherical_tank_from_dict_deprecated_radius_key():
+    """Test that SphericalTank.from_dict() issues a DeprecationWarning when
+    the serialized data contains the old 'radius' key.
+    """
+    old_data = {"radius": 0.05}
+    with warnings.catch_warnings(record=True) as w:
+        warnings.simplefilter("always")
+        tank = SphericalTank.from_dict(old_data)
+        assert len(w) == 1
+        assert issubclass(w[0].category, DeprecationWarning)
+
+    assert tank.radius_function == 0.05
diff --git a/tests/unit/rocket/aero_surface/test_fin_geometry.py b/tests/unit/rocket/aero_surface/test_fin_geometry.py
new file mode 100644
index 000000000..e4737bc40
--- /dev/null
+++ b/tests/unit/rocket/aero_surface/test_fin_geometry.py
@@ -0,0 +1,383 @@
+"""Unit tests for fin geometry strategy classes."""
+
+import numpy as np
+import pytest
+
+from rocketpy.rocket.aero_surface.fins import TrapezoidalFin, TrapezoidalFins
+from rocketpy.rocket.aero_surface.fins._geometry import (
+    _EllipticalGeometry,
+    _FreeFormGeometry,
+    _TrapezoidalGeometry,
+)
+
+
+def _make_trapezoidal_fins(cant_angle=0, n=4):
+    return TrapezoidalFins(
+        n=n,
+        root_chord=0.12,
+        tip_chord=0.04,
+        span=0.10,
+        rocket_radius=0.0635,
+        cant_angle=cant_angle,
+    )
+
+
+@pytest.mark.parametrize("cant", [3, -5, 0.5])
+def test_plural_fins_cant_angle_not_negated(cant):
+    """Regression: ``Fins.__init__`` used to store ``cant_angle`` negated, which
+    inverted the public attribute and flipped the cant-driven roll direction."""
+    fins = _make_trapezoidal_fins(cant_angle=cant)
+    assert fins.cant_angle == cant
+    np.testing.assert_allclose(fins.cant_angle_rad, np.radians(cant))
+
+
+def test_plural_fins_cant_roundtrip():
+    """``to_dict``/``from_dict`` must preserve the cant sign (it was double-
+    negated, so a save/load cycle flipped the physical cant)."""
+    fins = _make_trapezoidal_fins(cant_angle=5)
+    restored = TrapezoidalFins.from_dict(fins.to_dict())
+    assert restored.cant_angle == fins.cant_angle
+    np.testing.assert_allclose(restored.cant_angle_rad, fins.cant_angle_rad)
+
+
+def test_plural_fins_cant_setter_getter_consistency():
+    """Building with ``cant_angle=x`` and assigning ``cant_angle = x`` must yield
+    the same internal radian representation (constructor used to negate, setter
+    did not)."""
+    built = _make_trapezoidal_fins(cant_angle=5)
+    reset = _make_trapezoidal_fins(cant_angle=0)
+    reset.cant_angle = 5
+    np.testing.assert_allclose(built.cant_angle_rad, reset.cant_angle_rad)
+
+
+def test_singular_and_plural_cant_sign_parity():
+    """A single ``Fin`` and a plural ``Fins`` built with the same cant must agree
+    in ``cant_angle_rad`` (they diverged in sign when ``Fins`` negated it)."""
+    plural = _make_trapezoidal_fins(cant_angle=5)
+    single = TrapezoidalFin(
+        angular_position=0,
+        root_chord=0.12,
+        tip_chord=0.04,
+        span=0.10,
+        rocket_radius=0.0635,
+        cant_angle=5,
+    )
+    np.testing.assert_allclose(plural.cant_angle_rad, single.cant_angle_rad)
+
+
+def test_plural_fins_roll_forcing_scales_with_n():
+    """The roll forcing coefficient derivative must scale linearly with ``n``
+    (regression: it was changed to scale with ``fin_num_correction(n)``, which
+    ~halved the cant-driven roll authority for a 4-fin set)."""
+    fins4 = _make_trapezoidal_fins(cant_angle=2, n=4)
+    fins8 = _make_trapezoidal_fins(cant_angle=2, n=8)
+    clf4 = fins4.roll_parameters[0].get_value_opt(0.3)
+    clf8 = fins8.roll_parameters[0].get_value_opt(0.3)
+    np.testing.assert_allclose(clf8 / clf4, 8 / 4, rtol=1e-6)
+
+
+def test_trapezoidal_geometry_evaluate_geometrical_parameters(
+    calisto_trapezoidal_fin,
+):
+    """Ensure trapezoidal geometry populates the derived fin parameters."""
+    # Arrange
+    geometry = calisto_trapezoidal_fin.geometry
+
+    # Act
+    geometry.evaluate_geometrical_parameters()
+
+    # Assert
+    owner = calisto_trapezoidal_fin
+    expected_area = (owner.root_chord + owner.tip_chord) * owner.span / 2
+    expected_aspect_ratio = 2 * owner.span**2 / expected_area
+    expected_gamma_c = np.arctan(
+        (geometry.sweep_length + 0.5 * owner.tip_chord - 0.5 * owner.root_chord)
+        / owner.span
+    )
+    expected_mid_aerodynamic_span = (
+        owner.span
+        / 3
+        * (owner.root_chord + 2 * owner.tip_chord)
+        / (owner.root_chord + owner.tip_chord)
+    )
+    tau = (owner.span + owner.rocket_radius) / owner.rocket_radius
+    lambda_ = owner.tip_chord / owner.root_chord
+    expected_roll_constant = (
+        (owner.root_chord + 3 * owner.tip_chord) * owner.span**3
+        + 4
+        * (owner.root_chord + 2 * owner.tip_chord)
+        * owner.rocket_radius
+        * owner.span**2
+        + 6 * (owner.root_chord + owner.tip_chord) * owner.span * owner.rocket_radius**2
+    ) / 12
+    expected_lift_interference_factor = 1 + 1 / tau
+    expected_roll_damping_factor = 1 + (
+        ((tau - lambda_) / tau) - ((1 - lambda_) / (tau - 1)) * np.log(tau)
+    ) / (
+        ((tau + 1) * (tau - lambda_)) / 2
+        - ((1 - lambda_) * (tau**3 - 1)) / (3 * (tau - 1))
+    )
+    expected_roll_forcing_factor = (1 / np.pi**2) * (
+        (np.pi**2 / 4) * ((tau + 1) ** 2 / tau**2)
+        + (np.pi * (tau**2 + 1) ** 2 / (tau**2 * (tau - 1) ** 2))
+        * np.arcsin((tau**2 - 1) / (tau**2 + 1))
+        - (2 * np.pi * (tau + 1)) / (tau * (tau - 1))
+        + ((tau**2 + 1) ** 2 / (tau**2 * (tau - 1) ** 2))
+        * (np.arcsin((tau**2 - 1) / (tau**2 + 1))) ** 2
+        - (4 * (tau + 1)) / (tau * (tau - 1)) * np.arcsin((tau**2 - 1) / (tau**2 + 1))
+        + (8 / (tau - 1) ** 2) * np.log((tau**2 + 1) / (2 * tau))
+    )
+
+    assert isinstance(geometry, _TrapezoidalGeometry)
+    assert owner.Af == pytest.approx(expected_area)
+    assert owner.AR == pytest.approx(expected_aspect_ratio)
+    assert owner.gamma_c == pytest.approx(expected_gamma_c)
+    assert owner.Yma == pytest.approx(expected_mid_aerodynamic_span)
+    assert owner.roll_geometrical_constant == pytest.approx(expected_roll_constant)
+    assert owner.tau == pytest.approx(tau)
+    assert owner.lift_interference_factor == pytest.approx(
+        expected_lift_interference_factor
+    )
+    assert owner.roll_damping_interference_factor == pytest.approx(
+        expected_roll_damping_factor
+    )
+    assert owner.roll_forcing_interference_factor == pytest.approx(
+        expected_roll_forcing_factor
+    )
+
+
+def test_trapezoidal_geometry_evaluate_shape_sets_expected_points(
+    calisto_trapezoidal_fin,
+):
+    """Ensure trapezoidal geometry shape points match the configured sweep."""
+    # Arrange
+    geometry = calisto_trapezoidal_fin.geometry
+
+    # Act
+    geometry.evaluate_shape()
+
+    # Assert
+    np.testing.assert_allclose(
+        calisto_trapezoidal_fin.shape_vec[0],
+        np.array([0.0, 0.08, 0.12, 0.12]),
+    )
+    np.testing.assert_allclose(
+        calisto_trapezoidal_fin.shape_vec[1],
+        np.array([0.0, 0.1, 0.1, 0.0]),
+    )
+
+
+def test_trapezoidal_geometry_get_data_returns_inputs_and_outputs(
+    calisto_trapezoidal_fin,
+):
+    """Ensure trapezoidal geometry serialization includes optional outputs."""
+    # Arrange
+    geometry = calisto_trapezoidal_fin.geometry
+
+    # Act
+    geometry.evaluate_geometrical_parameters()
+    data_without_outputs = geometry.get_data()
+    data_with_outputs = geometry.get_data(include_outputs=True)
+
+    # Assert
+    assert data_without_outputs["tip_chord"] == pytest.approx(
+        calisto_trapezoidal_fin.tip_chord
+    )
+    assert data_without_outputs["sweep_length"] == pytest.approx(
+        calisto_trapezoidal_fin.sweep_length
+    )
+    assert data_without_outputs["sweep_angle"] is None
+    assert set(data_with_outputs) >= {
+        "tip_chord",
+        "sweep_length",
+        "sweep_angle",
+        "shape_vec",
+        "Af",
+        "AR",
+        "gamma_c",
+        "Yma",
+        "roll_geometrical_constant",
+        "tau",
+        "lift_interference_factor",
+        "roll_damping_interference_factor",
+        "roll_forcing_interference_factor",
+    }
+    np.testing.assert_allclose(
+        data_with_outputs["shape_vec"][0], calisto_trapezoidal_fin.shape_vec[0]
+    )
+
+
+def test_elliptical_geometry_evaluate_geometrical_parameters(
+    calisto_elliptical_fin,
+):
+    """Ensure elliptical geometry populates the derived fin parameters."""
+    # Arrange
+    geometry = calisto_elliptical_fin.geometry
+
+    # Act
+    geometry.evaluate_geometrical_parameters()
+
+    # Assert
+    owner = calisto_elliptical_fin
+    expected_area = np.pi * owner.root_chord / 2 * owner.span / 2
+    expected_aspect_ratio = 2 * owner.span**2 / expected_area
+    expected_mid_aerodynamic_span = (
+        owner.span / (3 * np.pi) * np.sqrt(9 * np.pi**2 - 64)
+    )
+    expected_roll_constant = (
+        owner.root_chord
+        * owner.span
+        * (
+            3 * np.pi * owner.span**2
+            + 32 * owner.rocket_radius * owner.span
+            + 12 * np.pi * owner.rocket_radius**2
+        )
+        / 48
+    )
+    tau = (owner.span + owner.rocket_radius) / owner.rocket_radius
+    expected_lift_interference_factor = 1 + 1 / tau
+
+    assert isinstance(geometry, _EllipticalGeometry)
+    assert owner.Af == pytest.approx(expected_area)
+    assert owner.AR == pytest.approx(expected_aspect_ratio)
+    assert owner.gamma_c == pytest.approx(0)
+    assert owner.Yma == pytest.approx(expected_mid_aerodynamic_span)
+    assert owner.roll_geometrical_constant == pytest.approx(expected_roll_constant)
+    assert owner.tau == pytest.approx(tau)
+    assert owner.lift_interference_factor == pytest.approx(
+        expected_lift_interference_factor
+    )
+    assert owner.roll_damping_interference_factor > 0
+    assert owner.roll_forcing_interference_factor > 0
+
+
+def test_elliptical_geometry_evaluate_shape_sets_expected_points(
+    calisto_elliptical_fin,
+):
+    """Ensure elliptical geometry evaluates the expected semi-ellipse shape."""
+    # Arrange
+    geometry = calisto_elliptical_fin.geometry
+
+    # Act
+    geometry.evaluate_shape()
+
+    # Assert
+    angles = np.arange(0, 180, 5)
+    expected_x = calisto_elliptical_fin.root_chord / 2 + (
+        calisto_elliptical_fin.root_chord / 2 * np.cos(np.radians(angles))
+    )
+    expected_y = calisto_elliptical_fin.span * np.sin(np.radians(angles))
+    np.testing.assert_allclose(calisto_elliptical_fin.shape_vec[0], expected_x)
+    np.testing.assert_allclose(calisto_elliptical_fin.shape_vec[1], expected_y)
+
+
+def test_elliptical_geometry_get_data_returns_expected_outputs(
+    calisto_elliptical_fin,
+):
+    """Ensure elliptical geometry serialization includes optional outputs."""
+    # Arrange
+    geometry = calisto_elliptical_fin.geometry
+
+    # Act
+    geometry.evaluate_geometrical_parameters()
+    data_without_outputs = geometry.get_data()
+    data_with_outputs = geometry.get_data(include_outputs=True)
+
+    # Assert
+    assert data_without_outputs == {}
+    assert data_with_outputs["Af"] == pytest.approx(calisto_elliptical_fin.Af)
+    assert data_with_outputs["AR"] == pytest.approx(calisto_elliptical_fin.AR)
+    assert data_with_outputs["gamma_c"] == pytest.approx(calisto_elliptical_fin.gamma_c)
+    assert data_with_outputs["Yma"] == pytest.approx(calisto_elliptical_fin.Yma)
+    assert data_with_outputs["roll_geometrical_constant"] == pytest.approx(
+        calisto_elliptical_fin.roll_geometrical_constant
+    )
+    assert data_with_outputs["tau"] == pytest.approx(calisto_elliptical_fin.tau)
+
+
+def test_free_form_geometry_infer_dimensions_warns_on_jagged_shape():
+    """Ensure jagged free-form fins emit a warning while dimensions are inferred."""
+    # Arrange
+    shape_points = [(0, 0), (0.05, 0.1), (0.06, 0.05), (0.09, 0.07), (0.12, 0)]
+
+    # Act
+    with pytest.warns(UserWarning, match="Jagged fin shape detected"):
+        root_chord, span = _FreeFormGeometry.infer_dimensions(shape_points)
+
+    # Assert
+    assert root_chord == pytest.approx(0.12)
+    assert span == pytest.approx(0.1)
+
+
+def test_free_form_geometry_evaluate_geometrical_parameters(calisto_free_form_fin):
+    """Ensure free-form geometry populates the derived fin parameters."""
+    # Arrange
+    geometry = calisto_free_form_fin.geometry
+
+    # Act
+    geometry.evaluate_geometrical_parameters()
+
+    # Assert
+    owner = calisto_free_form_fin
+    assert isinstance(geometry, _FreeFormGeometry)
+    assert owner.Af == pytest.approx(0.008)
+    assert owner.AR == pytest.approx(2.5)
+    assert owner.gamma_c > 0
+    assert owner.Yma > 0
+    assert owner.mac_length > 0
+    assert owner.mac_lead >= 0
+    assert owner.roll_geometrical_constant > 0
+    assert owner.tau > 0
+    assert owner.lift_interference_factor > 1
+    assert owner.roll_damping_interference_factor > 1
+    assert owner.roll_forcing_interference_factor > 0
+
+
+def test_free_form_geometry_evaluate_shape_sets_expected_points(
+    calisto_free_form_fin,
+):
+    """Ensure free-form geometry exposes the configured shape points."""
+    # Arrange
+    geometry = calisto_free_form_fin.geometry
+
+    # Act
+    geometry.evaluate_shape()
+
+    # Assert
+    np.testing.assert_allclose(
+        calisto_free_form_fin.shape_vec[0],
+        np.array([0.0, 0.08, 0.12, 0.12]),
+    )
+    np.testing.assert_allclose(
+        calisto_free_form_fin.shape_vec[1],
+        np.array([0.0, 0.1, 0.1, 0.0]),
+    )
+
+
+def test_free_form_geometry_get_data_returns_expected_outputs(
+    calisto_free_form_fin,
+):
+    """Ensure free-form geometry serialization includes optional outputs."""
+    # Arrange
+    geometry = calisto_free_form_fin.geometry
+
+    # Act
+    geometry.evaluate_geometrical_parameters()
+    data_without_outputs = geometry.get_data()
+    data_with_outputs = geometry.get_data(include_outputs=True)
+
+    # Assert
+    assert data_without_outputs == {
+        "shape_points": [(0, 0), (0.08, 0.1), (0.12, 0.1), (0.12, 0)],
+    }
+    assert data_with_outputs["shape_points"] == calisto_free_form_fin.shape_points
+    assert data_with_outputs["Af"] == pytest.approx(calisto_free_form_fin.Af)
+    assert data_with_outputs["AR"] == pytest.approx(calisto_free_form_fin.AR)
+    assert data_with_outputs["gamma_c"] == pytest.approx(calisto_free_form_fin.gamma_c)
+    assert data_with_outputs["Yma"] == pytest.approx(calisto_free_form_fin.Yma)
+    assert data_with_outputs["mac_length"] == pytest.approx(
+        calisto_free_form_fin.mac_length
+    )
+    assert data_with_outputs["mac_lead"] == pytest.approx(
+        calisto_free_form_fin.mac_lead
+    )
diff --git a/tests/unit/rocket/aero_surface/test_individual_fins.py b/tests/unit/rocket/aero_surface/test_individual_fins.py
new file mode 100644
index 000000000..f30bb52cc
--- /dev/null
+++ b/tests/unit/rocket/aero_surface/test_individual_fins.py
@@ -0,0 +1,460 @@
+"""Unit tests for individual fin classes."""
+
+from unittest.mock import patch
+
+import numpy as np
+import pytest
+
+from rocketpy import (
+    EllipticalFin,
+    FreeFormFin,
+    Rocket,
+    TrapezoidalFin,
+    TrapezoidalFins,
+)
+from rocketpy.mathutils.vector_matrix import Vector
+
+
+@pytest.mark.parametrize(
+    "fixture_name,expected_class",
+    [
+        ("calisto_trapezoidal_fin", TrapezoidalFin),
+        ("calisto_elliptical_fin", EllipticalFin),
+        ("calisto_free_form_fin", FreeFormFin),
+    ],
+)
+def test_individual_fin_info_returns_none(request, fixture_name, expected_class):
+    """Ensure info() executes for all individual fin classes."""
+    # Arrange
+    fin = request.getfixturevalue(fixture_name)
+
+    # Act
+    result = fin.info()
+
+    # Assert
+    assert isinstance(fin, expected_class)
+    assert result is None
+
+
+@patch("matplotlib.pyplot.show")
+@pytest.mark.parametrize(
+    "fixture_name",
+    [
+        "calisto_trapezoidal_fin",
+        "calisto_elliptical_fin",
+        "calisto_free_form_fin",
+    ],
+)
+def test_individual_fin_draw_returns_none(mock_show, request, fixture_name):  # pylint: disable=unused-argument
+    """Ensure draw() executes for all individual fin classes."""
+    # Arrange
+    fin = request.getfixturevalue(fixture_name)
+
+    # Act
+    result = fin.draw(filename=None)
+
+    # Assert
+    assert result is None
+
+
+@pytest.mark.parametrize(
+    "fixture_name",
+    [
+        "calisto_trapezoidal_fin",
+        "calisto_elliptical_fin",
+        "calisto_free_form_fin",
+    ],
+)
+def test_individual_fin_angular_position_updates_radians(request, fixture_name):
+    """Ensure angular_position setter updates angular_position_rad."""
+    # Arrange
+    fin = request.getfixturevalue(fixture_name)
+
+    # Act
+    fin.angular_position = 45
+
+    # Assert
+    assert fin.angular_position == 45
+    np.testing.assert_allclose(fin.angular_position_rad, np.pi / 4)
+
+
+def test_trapezoidal_fin_setters_update_geometry(calisto_trapezoidal_fin):
+    """Ensure trapezoidal fin geometry setters update exposed values."""
+    # Arrange
+    fin = calisto_trapezoidal_fin
+
+    # Act
+    fin.tip_chord = 0.05
+    fin.sweep_angle = 12.0
+    fin.sweep_length = 0.03
+
+    # Assert
+    np.testing.assert_allclose(fin.tip_chord, 0.05)
+    np.testing.assert_allclose(fin.sweep_angle, 12.0)
+    np.testing.assert_allclose(fin.sweep_length, 0.03)
+
+
+def test_individual_fin_rocket_diameter_aliases_are_kept_in_sync(
+    calisto_trapezoidal_fin,
+):
+    """Ensure rocket_diameter is canonical and old aliases remain compatible."""
+    # Arrange
+    fin = calisto_trapezoidal_fin
+
+    # Act
+    fin.rocket_diameter = 0.15
+
+    # Assert
+    np.testing.assert_allclose(fin.rocket_diameter, 0.15)
+    np.testing.assert_allclose(fin.diameter, 0.15)
+    np.testing.assert_allclose(fin.d, 0.15)
+    np.testing.assert_allclose(fin.rocket_radius, 0.075)
+    np.testing.assert_allclose(fin.reference_length, 0.15)
+
+    # Act
+    fin.d = 0.20
+
+    # Assert
+    np.testing.assert_allclose(fin.rocket_diameter, 0.20)
+    np.testing.assert_allclose(fin.diameter, 0.20)
+    np.testing.assert_allclose(fin.d, 0.20)
+    np.testing.assert_allclose(fin.rocket_radius, 0.10)
+    np.testing.assert_allclose(fin.reference_length, 0.20)
+
+
+def test_individual_fin_reference_area_and_ref_area_alias_are_kept_in_sync(
+    calisto_trapezoidal_fin,
+):
+    """Ensure reference_area is canonical and ref_area remains compatible."""
+    # Arrange
+    fin = calisto_trapezoidal_fin
+
+    # Act
+    fin.reference_area = 0.123
+
+    # Assert
+    np.testing.assert_allclose(fin.reference_area, 0.123)
+    np.testing.assert_allclose(fin.ref_area, 0.123)
+
+    # Act
+    fin.ref_area = 0.456
+
+    # Assert
+    np.testing.assert_allclose(fin.reference_area, 0.456)
+    np.testing.assert_allclose(fin.ref_area, 0.456)
+
+
+def test_individual_fin_to_dict_include_outputs_exposes_diameter_aliases(
+    calisto_trapezoidal_fin,
+):
+    """Ensure output serialization exposes canonical and alias diameter keys."""
+    # Arrange
+    fin = calisto_trapezoidal_fin
+
+    # Act
+    data = fin.to_dict(include_outputs=True)
+
+    # Assert
+    np.testing.assert_allclose(data["rocket_diameter"], fin.rocket_diameter)
+    np.testing.assert_allclose(data["diameter"], fin.rocket_diameter)
+    np.testing.assert_allclose(data["d"], fin.rocket_diameter)
+    np.testing.assert_allclose(data["reference_area"], fin.reference_area)
+    np.testing.assert_allclose(data["ref_area"], fin.reference_area)
+
+
+def test_trapezoidal_fin_rejects_inconsistent_sweep_inputs():
+    """Ensure trapezoidal fin rejects sweep_length with sweep_angle together."""
+    # Arrange / Act / Assert
+    with pytest.raises(
+        ValueError, match="Cannot use sweep_length and sweep_angle together"
+    ):
+        TrapezoidalFin(
+            angular_position=0,
+            root_chord=0.12,
+            tip_chord=0.04,
+            span=0.1,
+            rocket_radius=0.0635,
+            sweep_length=0.02,
+            sweep_angle=10.0,
+        )
+
+
+def test_free_form_fin_shape_points_property(calisto_free_form_fin):
+    """Ensure free-form fin exposes the original shape points."""
+    # Arrange
+    fin = calisto_free_form_fin
+
+    # Act
+    shape_points = fin.shape_points
+
+    # Assert
+    assert shape_points == [(0, 0), (0.08, 0.1), (0.12, 0.1), (0.12, 0)]
+
+
+@pytest.mark.parametrize(
+    "fixture_name,required_keys",
+    [
+        (
+            "calisto_trapezoidal_fin",
+            {
+                "angular_position",
+                "root_chord",
+                "span",
+                "rocket_radius",
+                "cant_angle",
+                "airfoil",
+                "name",
+                "tip_chord",
+                "sweep_length",
+                "sweep_angle",
+            },
+        ),
+        (
+            "calisto_elliptical_fin",
+            {
+                "angular_position",
+                "root_chord",
+                "span",
+                "rocket_radius",
+                "cant_angle",
+                "airfoil",
+                "name",
+            },
+        ),
+        (
+            "calisto_free_form_fin",
+            {
+                "angular_position",
+                "rocket_radius",
+                "cant_angle",
+                "airfoil",
+                "name",
+                "shape_points",
+            },
+        ),
+    ],
+)
+def test_individual_fin_to_dict_contains_expected_keys(
+    request, fixture_name, required_keys
+):
+    """Ensure to_dict for each individual fin exposes expected input keys."""
+    # Arrange
+    fin = request.getfixturevalue(fixture_name)
+
+    # Act
+    data = fin.to_dict()
+
+    # Assert
+    assert required_keys.issubset(data.keys())
+
+
+@pytest.mark.parametrize(
+    "fixture_name,fin_class,comparisons",
+    [
+        (
+            "calisto_trapezoidal_fin",
+            TrapezoidalFin,
+            ["angular_position", "root_chord", "tip_chord", "span", "rocket_radius"],
+        ),
+        (
+            "calisto_elliptical_fin",
+            EllipticalFin,
+            ["angular_position", "root_chord", "span", "rocket_radius"],
+        ),
+        (
+            "calisto_free_form_fin",
+            FreeFormFin,
+            ["angular_position", "rocket_radius"],
+        ),
+    ],
+)
+def test_individual_fin_from_dict_roundtrip(
+    request, fixture_name, fin_class, comparisons
+):
+    """Ensure each individual fin can be reconstructed with from_dict."""
+    # Arrange
+    fin = request.getfixturevalue(fixture_name)
+    data = fin.to_dict()
+
+    # Act
+    reconstructed = fin_class.from_dict(data)
+
+    # Assert
+    assert isinstance(reconstructed, fin_class)
+    for field in comparisons:
+        np.testing.assert_allclose(getattr(reconstructed, field), getattr(fin, field))
+
+    if fin_class is FreeFormFin:
+        assert reconstructed.shape_points == fin.shape_points
+
+
+def test_trapezoidal_fin_from_dict_roundtrip_preserves_sweep_length():
+    """Ensure TrapezoidalFin round-trip preserves non-default sweep geometry."""
+    # Arrange
+    original = TrapezoidalFin(
+        angular_position=0,
+        root_chord=0.12,
+        tip_chord=0.04,
+        span=0.1,
+        rocket_radius=0.0635,
+        cant_angle=0,
+        sweep_angle=15.0,
+        name="roundtrip_trapezoidal_fin",
+    )
+    data = original.to_dict()
+
+    # Act
+    reconstructed = TrapezoidalFin.from_dict(data)
+
+    # Assert
+    np.testing.assert_allclose(reconstructed.sweep_length, original.sweep_length)
+
+
+def test_calisto_finset_vs_four_individual_fins_close():
+    """Ensure a 4-fin set and 4 individual fins produce close aerodynamics.
+
+    Notes
+    -----
+    A fin set model includes finite-set lift correction for the number of fins.
+    For 4 fins, this correction is equivalent to scaling the sum of 4
+    individual-fin lift derivatives by 1/2.
+    """
+    # Arrange
+    finset_rocket = Rocket(
+        radius=0.0635,
+        mass=14.426,
+        inertia=(6.321, 6.321, 0.034),
+        power_off_drag="data/rockets/calisto/powerOffDragCurve.csv",
+        power_on_drag="data/rockets/calisto/powerOnDragCurve.csv",
+        center_of_mass_without_motor=0,
+        coordinate_system_orientation="tail_to_nose",
+    )
+    finset_rocket.add_surfaces(
+        TrapezoidalFins(
+            n=4,
+            span=0.100,
+            root_chord=0.120,
+            tip_chord=0.040,
+            rocket_radius=0.0635,
+            name="calisto_trapezoidal_fins",
+            cant_angle=0,
+            sweep_length=None,
+            sweep_angle=None,
+            airfoil=None,
+        ),
+        -1.168,
+    )
+
+    individual_fins_rocket = Rocket(
+        radius=0.0635,
+        mass=14.426,
+        inertia=(6.321, 6.321, 0.034),
+        power_off_drag="data/rockets/calisto/powerOffDragCurve.csv",
+        power_on_drag="data/rockets/calisto/powerOnDragCurve.csv",
+        center_of_mass_without_motor=0,
+        coordinate_system_orientation="tail_to_nose",
+    )
+
+    individual_fins = [
+        TrapezoidalFin(
+            angular_position=angle,
+            root_chord=0.120,
+            tip_chord=0.040,
+            span=0.100,
+            rocket_radius=0.0635,
+            name=f"calisto_trapezoidal_fin_{i}",
+            cant_angle=0,
+            sweep_length=None,
+            sweep_angle=None,
+            airfoil=None,
+        )
+        for i, angle in enumerate((0, 90, 180, 270), start=1)
+    ]
+    individual_fins_rocket.add_surfaces(individual_fins, [-1.168] * 4)
+
+    mach_grid = np.linspace(0, 2, 21)
+
+    # Act
+    cp_finset = finset_rocket.cp_position(mach_grid)
+    cp_individual = individual_fins_rocket.cp_position(mach_grid)
+    clalpha_finset = finset_rocket.total_lift_coeff_der(mach_grid)
+    clalpha_individual = individual_fins_rocket.total_lift_coeff_der(mach_grid)
+    lift_correction = TrapezoidalFins.fin_num_correction(4) / 4
+    clalpha_individual_corrected = np.array(clalpha_individual) * lift_correction
+
+    # Assert
+    np.testing.assert_allclose(cp_individual, cp_finset, rtol=1e-6, atol=1e-6)
+    np.testing.assert_allclose(clalpha_individual_corrected, clalpha_finset)
+
+
+def test_individual_fin_roll_damping_not_double_counted():
+    """Regression: roll damping for an individual fin must come solely from the
+    roll-rate velocity that the Flight loop injects into the local stream
+    velocity (``w ^ cp`` at the off-axis center of pressure), captured by the
+    ``cp ^ R`` moment. An extra explicit ``cld_omega * omega3`` term used to be
+    added on top, double-counting the damping. The roll moment must therefore be
+    invariant to the explicit ``omega`` argument for a fixed stream velocity, and
+    must still respond to a tangential (roll-induced) stream component."""
+    fin = TrapezoidalFin(
+        angular_position=0,  # fin located at +y, so its CP is off the roll axis
+        root_chord=0.12,
+        tip_chord=0.04,
+        span=0.10,
+        rocket_radius=0.0635,
+        cant_angle=0,
+    )
+    cp = Vector([0.0, 0.0635, -1.0])
+    axial_stream = Vector([0.0, 0.0, 30.0])
+    tangential_stream = Vector([3.0, 0.0, 30.0])  # +x mimics roll-induced flow
+
+    def roll_moment(stream, omega3):
+        return fin.compute_forces_and_moments(
+            stream, abs(stream), 0.1, 1.2, cp, (0.0, 0.0, omega3)
+        )[5]
+
+    # The explicit omega argument must not add a separate damping term.
+    m_omega_0 = roll_moment(tangential_stream, 0.0)
+    m_omega_50 = roll_moment(tangential_stream, 50.0)
+    np.testing.assert_allclose(m_omega_0, m_omega_50, atol=1e-12)
+
+    # Damping is still produced: a tangential (roll-induced) stream component
+    # changes the roll moment relative to purely axial flow.
+    m_axial = roll_moment(axial_stream, 0.0)
+    assert abs(m_omega_0 - m_axial) > 1e-6
+
+
+@pytest.mark.parametrize(
+    "position_input",
+    [
+        (0.02, -0.01, -1.2),
+        Vector([0.02, -0.01, -1.2]),
+    ],
+)
+def test_add_individual_fin_accepts_full_3d_position(position_input):
+    """Ensure individual fins accept full (x, y, z) position inputs."""
+    # Arrange
+    rocket = Rocket(
+        radius=0.0635,
+        mass=14.426,
+        inertia=(6.321, 6.321, 0.034),
+        power_off_drag="data/rockets/calisto/powerOffDragCurve.csv",
+        power_on_drag="data/rockets/calisto/powerOnDragCurve.csv",
+        center_of_mass_without_motor=0,
+        coordinate_system_orientation="tail_to_nose",
+    )
+    fin = TrapezoidalFin(
+        angular_position=30,
+        root_chord=0.120,
+        tip_chord=0.040,
+        span=0.100,
+        rocket_radius=0.0635,
+        cant_angle=0,
+        name="position_test_fin",
+    )
+
+    # Act
+    rocket.add_surfaces(fin, position_input)
+    stored_position = rocket.aerodynamic_surfaces[0].position
+
+    # Assert
+    assert stored_position == Vector([0.02, -0.01, -1.2])
diff --git a/tests/unit/rocket/test_parachute.py b/tests/unit/rocket/test_parachute.py
index e193b777b..310c85aac 100644
--- a/tests/unit/rocket/test_parachute.py
+++ b/tests/unit/rocket/test_parachute.py
@@ -4,7 +4,7 @@
 import numpy as np
 import pytest
 
-from rocketpy import Parachute
+from rocketpy import HemisphericalParachute, Parachute
 
 
 def _make_parachute(**kwargs):
@@ -15,7 +15,7 @@ def _make_parachute(**kwargs):
         "sampling_rate": 100,
     }
     defaults.update(kwargs)
-    return Parachute(**defaults)
+    return HemisphericalParachute(**defaults)
 
 
 class TestParachuteRadiusEstimation:
@@ -91,7 +91,7 @@ def test_from_dict_round_trip_preserves_drag_coefficient(self):
         drag_coefficient."""
         original = _make_parachute(cd_s=5.0, drag_coefficient=0.75)
         data = original.to_dict()
-        restored = Parachute.from_dict(data)
+        restored = HemisphericalParachute.from_dict(data)
         assert restored.drag_coefficient == pytest.approx(0.75)
         assert restored.radius == pytest.approx(original.radius, rel=1e-9)
 
@@ -107,5 +107,30 @@ def test_from_dict_defaults_drag_coefficient_to_1_4_when_absent(self):
             "noise": (0, 0, 0),
             # no drag_coefficient key — simulates old serialized data
         }
-        parachute = Parachute.from_dict(data)
+        parachute = HemisphericalParachute.from_dict(data)
         assert parachute.drag_coefficient == pytest.approx(1.4)
+
+
+class TestParachuteAbstractBase:
+    """After the PR #958 refactor, ``Parachute`` is an abstract base class and
+    users must instantiate a concrete model such as ``HemisphericalParachute``."""
+
+    def test_parachute_abstract_base_cannot_be_instantiated(self):
+        """Instantiating the abstract ``Parachute`` base directly must raise a
+        ``TypeError`` (unimplemented abstract methods)."""
+        with pytest.raises(TypeError, match="abstract"):
+            # pylint: disable=abstract-class-instantiated,unexpected-keyword-arg
+            # pylint: disable=no-value-for-parameter
+            Parachute(
+                name="test",
+                cd_s=10.0,
+                trigger="apogee",
+                sampling_rate=100,
+            )
+
+    def test_hemispherical_parachute_is_a_parachute_subclass(self):
+        """The concrete ``HemisphericalParachute`` must derive from the abstract
+        ``Parachute`` base."""
+        assert issubclass(HemisphericalParachute, Parachute)
+        parachute = _make_parachute()
+        assert isinstance(parachute, Parachute)
diff --git a/tests/unit/rocket/test_rocket.py b/tests/unit/rocket/test_rocket.py
index 3c7725fa5..18ad5680b 100644
--- a/tests/unit/rocket/test_rocket.py
+++ b/tests/unit/rocket/test_rocket.py
@@ -5,7 +5,12 @@
 import numpy as np
 import pytest
 
-from rocketpy import Function, NoseCone, Rocket, SolidMotor
+from rocketpy import Function, GenericSurface, NoseCone, Rocket, SolidMotor
+from rocketpy.exceptions import (
+    InvalidInertiaError,
+    InvalidParameterError,
+    UnstableRocketWarning,
+)
 from rocketpy.mathutils.vector_matrix import Vector
 from rocketpy.motors.empty_motor import EmptyMotor
 from rocketpy.motors.motor import Motor
@@ -835,3 +840,159 @@ def test_drag_input_types_supported_for_power_on_and_power_off(tmp_path):
 
         assert rocket.power_off_drag_7d(*query_point) == pytest.approx(expected)
         assert rocket.power_on_drag_7d(*query_point) == pytest.approx(expected)
+
+
+@pytest.mark.parametrize("radius", [-1, 0, -0.001])
+def test_rocket_invalid_radius_raises(radius):
+    """InvalidParameterError must be raised for non-positive radius values."""
+    with pytest.raises(InvalidParameterError, match="radius"):
+        Rocket(
+            radius=radius,
+            mass=10,
+            inertia=(0.1, 0.1, 0.01),
+            power_off_drag=0.3,
+            power_on_drag=0.3,
+            center_of_mass_without_motor=0,
+        )
+
+
+@pytest.mark.parametrize("mass", [-1, 0, -0.001])
+def test_rocket_invalid_mass_raises(mass):
+    """InvalidParameterError must be raised for non-positive mass values."""
+    with pytest.raises(InvalidParameterError, match="mass"):
+        Rocket(
+            radius=0.05,
+            mass=mass,
+            inertia=(0.1, 0.1, 0.01),
+            power_off_drag=0.3,
+            power_on_drag=0.3,
+            center_of_mass_without_motor=0,
+        )
+
+
+@pytest.mark.parametrize("inertia", [(0.1,), (0.1, 0.1), (0.1, 0.1, 0.01, 0.0, 0.0)])
+def test_rocket_invalid_inertia_length_raises(inertia):
+    """InvalidInertiaError must be raised when inertia tuple has wrong length."""
+    with pytest.raises(InvalidInertiaError):
+        Rocket(
+            radius=0.05,
+            mass=10,
+            inertia=inertia,
+            power_off_drag=0.3,
+            power_on_drag=0.3,
+            center_of_mass_without_motor=0,
+        )
+
+
+@pytest.mark.parametrize(
+    "inertia",
+    [
+        np.array([6.321, 6.321, 0.034]),
+        np.array([6.321, 6.321, 0.034, 0.0, 0.0, 0.0]),
+    ],
+)
+def test_rocket_accepts_numpy_inertia_and_scalars(inertia):
+    """Regression: numpy-array inertia and numpy numeric scalars for
+    radius/mass must be accepted (they were rejected by an overly strict
+    isinstance check, breaking code that computes inertia tensors with numpy)."""
+    rocket = Rocket(
+        radius=np.float64(0.05),
+        mass=np.int64(10),
+        inertia=inertia,
+        power_off_drag=0.3,
+        power_on_drag=0.3,
+        center_of_mass_without_motor=0,
+    )
+    assert rocket.I_11_without_motor == inertia[0]
+    assert rocket.I_33_without_motor == inertia[2]
+
+
+def test_add_trapezoidal_fins_two_fins_warns_but_succeeds(calisto):
+    """Regression: fin sets with n<=2 must still be accepted (as on master),
+    now with an informative warning instead of a hard error."""
+    with pytest.warns(UserWarning, match="2 or fewer fins"):
+        fins = calisto.add_trapezoidal_fins(
+            2, span=0.1, root_chord=0.12, tip_chord=0.04, position=-1.0
+        )
+    assert fins in [surface for surface, _ in calisto.aerodynamic_surfaces]
+
+
+def test_unstable_rocket_warning_raised(calisto):
+    """UnstableRocketWarning must be raised (at finalization, e.g. via
+    ``warn_if_unstable``) when the static margin at motor ignition is negative.
+    The warning must NOT fire during incremental ``add_surfaces`` construction,
+    to avoid spurious warnings for partially-built-but-stable rockets."""
+    nose = NoseCone(
+        length=0.55829,
+        kind="vonkarman",
+        base_radius=0.0635,
+        rocket_radius=0.0635,
+        name="Nose Cone",
+    )
+    # Adding surfaces during construction must not warn.
+    with warnings.catch_warnings():
+        warnings.simplefilter("error", UnstableRocketWarning)
+        calisto.add_surfaces(nose, 1.16)
+
+    # The check fires explicitly once the rocket is finalized.
+    with pytest.warns(UnstableRocketWarning):
+        calisto.warn_if_unstable()
+    assert calisto.static_margin(0) < 0
+
+
+def test_unstable_rocket_warning_skipped_with_generic_surface(calisto):
+    """UnstableRocketWarning must not be raised when the rocket has a
+    GenericSurface, since its lift coefficient derivative is not accounted
+    for in the center of pressure calculation, making the static margin
+    unreliable for this check."""
+    nose = NoseCone(
+        length=0.55829,
+        kind="vonkarman",
+        base_radius=0.0635,
+        rocket_radius=0.0635,
+        name="Nose Cone",
+    )
+    generic_surface = GenericSurface(
+        reference_area=None,
+        reference_length=None,
+        coefficients={
+            "cL": lambda alpha, beta, mach, reynolds, pitch_rate, yaw_rate, roll_rate: 1
+        },
+    )
+    with warnings.catch_warnings():
+        warnings.simplefilter("error", UnstableRocketWarning)
+        calisto.add_surfaces([nose, generic_surface], [1.16, 0])
+        calisto.warn_if_unstable()
+    assert calisto.static_margin(0) < 0
+
+
+def test_power_drag_exposed_as_function_objects_and_inputs_preserved():
+    """Regression for PR #941: ``power_off_drag``/``power_on_drag`` must be
+    exposed as Mach-only ``Function`` objects, while the raw user input is
+    preserved in the ``_power_off_drag_input``/``_power_on_drag_input``
+    attributes."""
+    off_input = "data/rockets/calisto/powerOffDragCurve.csv"
+    on_input = "data/rockets/calisto/powerOnDragCurve.csv"
+    rocket = Rocket(
+        radius=0.0635,
+        mass=14.426,
+        inertia=(6.321, 6.321, 0.034),
+        power_off_drag=off_input,
+        power_on_drag=on_input,
+        center_of_mass_without_motor=0,
+        coordinate_system_orientation="tail_to_nose",
+    )
+
+    # Public drag attributes are Function objects (Mach-only aliases).
+    assert isinstance(rocket.power_off_drag, Function)
+    assert isinstance(rocket.power_on_drag, Function)
+    assert rocket.power_off_drag(0.5) == pytest.approx(
+        rocket.power_off_drag_7d(0, 0, 0.5, 0, 0, 0, 0)
+    )
+    assert rocket.power_on_drag(0.5) == pytest.approx(
+        rocket.power_on_drag_7d(0, 0, 0.5, 0, 0, 0, 0)
+    )
+
+    # Raw user input is preserved for serialization / round-tripping.
+    assert rocket._power_off_drag_input == off_input
+    assert rocket._power_on_drag_input == on_input
diff --git a/tests/unit/sensors/test_sensor.py b/tests/unit/sensors/test_sensor.py
index 0813a3638..7273282dc 100644
--- a/tests/unit/sensors/test_sensor.py
+++ b/tests/unit/sensors/test_sensor.py
@@ -8,6 +8,16 @@
 from rocketpy.mathutils.vector_matrix import Matrix, Vector
 from rocketpy.tools import euler313_to_quaternions
 
+
+@pytest.fixture(autouse=True)
+def _seed_rng():
+    """Seed NumPy's global RNG before each test so that the noise-based
+    sensor measurements are deterministic. Without this, tests such as
+    ``test_noisy_barometer`` are flaky because the random white noise can
+    occasionally exceed the assertion tolerance."""
+    np.random.seed(42)
+
+
 # calisto standard simulation no wind solution index 200
 TIME = 3.338513236767685
 U = [
diff --git a/tests/unit/simulation/test_flight.py b/tests/unit/simulation/test_flight.py
index 9af1c5fd5..9a3c54477 100644
--- a/tests/unit/simulation/test_flight.py
+++ b/tests/unit/simulation/test_flight.py
@@ -8,6 +8,7 @@
 from scipy import optimize
 
 from rocketpy import Components, Flight, Function, Rocket
+from rocketpy.simulation import FlightDataExporter
 
 plt.rcParams.update({"figure.max_open_warning": 0})
 
@@ -174,7 +175,9 @@ def test_export_sensor_data(flight_calisto_with_sensors):
     flight_calisto_with_sensors : Flight
         Pytest fixture for the flight of the calisto rocket with an ideal accelerometer and a gyroscope.
     """
-    flight_calisto_with_sensors.export_sensor_data("test_sensor_data.json")
+    FlightDataExporter(flight_calisto_with_sensors).export_sensor_data(
+        "test_sensor_data.json"
+    )
     # read the json and parse as dict
     filename = "test_sensor_data.json"
     with open(filename, "r") as f:
diff --git a/tests/unit/simulation/test_flight_time_nodes.py b/tests/unit/simulation/test_flight_time_nodes.py
index 20769b1f8..2c330d30a 100644
--- a/tests/unit/simulation/test_flight_time_nodes.py
+++ b/tests/unit/simulation/test_flight_time_nodes.py
@@ -2,7 +2,7 @@
 TimeNode.
 """
 
-# from rocketpy.rocket import Parachute, _Controller
+from rocketpy.control.controller import _Controller
 
 
 def test_time_nodes_init(flight_calisto):
@@ -49,6 +49,32 @@ def test_time_nodes_add_node(flight_calisto):
 # TODO: implement this test
 
 
+def test_time_nodes_add_controllers_skips_continuous_controllers(flight_calisto):
+    """Ensure only discrete controllers create time nodes."""
+    # Arrange
+    discrete_controller = _Controller(
+        interactive_objects=[],
+        controller_function=lambda t, sr, sv, sh, ov, io: None,
+        sampling_rate=10,
+        name="Discrete",
+    )
+    continuous_controller = _Controller(
+        interactive_objects=[],
+        controller_function=lambda t, sr, sv, sh, ov, io: None,
+        sampling_rate=None,
+        name="Continuous",
+    )
+    time_nodes = flight_calisto.TimeNodes()
+
+    # Act
+    time_nodes.add_controllers([discrete_controller, continuous_controller], 0, 1)
+
+    # Assert
+    assert len(time_nodes) == 11
+    assert all(node._controllers == [discrete_controller] for node in time_nodes)
+    assert all(continuous_controller not in node._controllers for node in time_nodes)
+
+
 def test_time_nodes_sort(flight_calisto):
     time_nodes = flight_calisto.TimeNodes()
     time_nodes.add_node(3.0, [], [], [])
diff --git a/tests/unit/simulation/test_monte_carlo.py b/tests/unit/simulation/test_monte_carlo.py
index 5595e46bb..4e543505d 100644
--- a/tests/unit/simulation/test_monte_carlo.py
+++ b/tests/unit/simulation/test_monte_carlo.py
@@ -1,3 +1,8 @@
+import csv
+import json
+import pathlib
+from collections import namedtuple
+
 import matplotlib as plt
 import numpy as np
 import pytest
@@ -185,3 +190,326 @@ def test_estimate_confidence_interval_raises_type_error_for_invalid_statistic():
 
     with pytest.raises(TypeError):
         mc.estimate_confidence_interval("apogee", statistic="not_a_function")
+
+
+@pytest.mark.parametrize(
+    "kwargs, match",
+    [
+        ({"batch_size": 0}, "batch_size"),
+        ({"batch_size": -5}, "batch_size"),
+        ({"max_simulations": 0}, "max_simulations"),
+        ({"tolerance": 0}, "tolerance"),
+        ({"tolerance": -1.0}, "tolerance"),
+        ({"target_confidence": 1.5}, "target_confidence"),
+        ({"target_confidence": 0}, "target_confidence"),
+    ],
+)
+def test_simulate_convergence_validates_inputs(kwargs, match):
+    """simulate_convergence must reject invalid inputs up front. In particular a
+    non-positive batch_size would otherwise make the loop run zero simulations
+    per iteration and spin forever."""
+    mc = MockMonteCarlo()
+    with pytest.raises(ValueError, match=match):
+        mc.simulate_convergence(**kwargs)
+
+
+# --- CSV and JSON export/import tests ---
+
+
+class MockMonteCarloWithLogs(MonteCarlo):
+    """Mock class with populated logs for testing export/import methods."""
+
+    def __init__(self):
+        # pylint: disable=super-init-not-called
+        self.outputs_log = [
+            {"apogee": 5742.42, "x_impact": 553.49, "index": 0},
+            {"apogee": 3844.41, "x_impact": 402.31, "index": 1},
+            {"apogee": 4500.00, "x_impact": 480.10, "index": 2},
+        ]
+        self.inputs_log = [
+            {
+                "elevation": 1413.6,
+                "radius": 0.0635,
+                "parachutes": [{"cd_s": 9.84}],
+                "index": 0,
+            },
+            {
+                "elevation": 1400.0,
+                "radius": 0.0640,
+                "parachutes": [{"cd_s": 10.0}],
+                "index": 1,
+            },
+            {
+                "elevation": 1420.0,
+                "radius": 0.0630,
+                "parachutes": [{"cd_s": 9.50}],
+                "index": 2,
+            },
+        ]
+        self.errors_log = []
+        self.results = {}
+        self.processed_results = {}
+        self.num_of_loaded_sims = 3
+
+
+def test_export_outputs_to_csv(tmp_path):
+    """Tests that outputs are correctly exported to CSV."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "outputs.csv"
+
+    mc.export_outputs_to_csv(str(filepath))
+
+    with open(filepath, encoding="utf-8") as f:
+        reader = csv.DictReader(f)
+        rows = list(reader)
+
+    assert len(rows) == 3
+    assert float(rows[0]["apogee"]) == pytest.approx(5742.42)
+    assert float(rows[1]["x_impact"]) == pytest.approx(402.31)
+
+
+def test_export_outputs_to_json(tmp_path):
+    """Tests that outputs are correctly exported to JSON."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "outputs.json"
+
+    mc.export_outputs_to_json(str(filepath))
+
+    with open(filepath, encoding="utf-8") as f:
+        data = json.load(f)
+
+    assert len(data) == 3
+    assert data[0]["apogee"] == pytest.approx(5742.42)
+    assert data[2]["index"] == 2
+
+
+def test_export_inputs_to_csv_no_flatten(tmp_path):
+    """Tests that inputs with nested values are serialized as JSON in CSV cells."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "inputs.csv"
+
+    mc.export_inputs_to_csv(str(filepath), flatten=False)
+
+    with open(filepath, encoding="utf-8") as f:
+        reader = csv.DictReader(f)
+        rows = list(reader)
+
+    assert len(rows) == 3
+    # The parachutes column should contain a JSON string
+    parachutes_val = json.loads(rows[0]["parachutes"])
+    assert parachutes_val == [{"cd_s": 9.84}]
+
+
+def test_export_inputs_to_csv_flatten(tmp_path):
+    """Tests that flatten=True omits non-scalar columns."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "inputs.csv"
+
+    mc.export_inputs_to_csv(str(filepath), flatten=True)
+
+    with open(filepath, encoding="utf-8") as f:
+        reader = csv.DictReader(f)
+        rows = list(reader)
+
+    assert "parachutes" not in rows[0]
+    assert "elevation" in rows[0]
+    assert "radius" in rows[0]
+
+
+def test_export_inputs_to_json(tmp_path):
+    """Tests that inputs are correctly exported to JSON."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "inputs.json"
+
+    mc.export_inputs_to_json(str(filepath))
+
+    with open(filepath, encoding="utf-8") as f:
+        data = json.load(f)
+
+    assert len(data) == 3
+    assert data[0]["parachutes"] == [{"cd_s": 9.84}]
+
+
+def test_export_empty_log_raises_error(tmp_path):
+    """Tests that exporting an empty log raises ValueError."""
+    mc = MockMonteCarloWithLogs()
+    mc.outputs_log = []
+
+    with pytest.raises(ValueError, match="No data to export"):
+        mc.export_outputs_to_csv(str(tmp_path / "empty.csv"))
+
+    with pytest.raises(ValueError, match="No data to export"):
+        mc.export_outputs_to_json(str(tmp_path / "empty.json"))
+
+
+def test_import_outputs_from_csv(tmp_path):
+    """Tests that outputs can be imported from a CSV file."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "outputs.csv"
+
+    # Export first
+    mc.export_outputs_to_csv(str(filepath))
+
+    # Create a fresh mock and import
+    mc2 = MockMonteCarloWithLogs()
+    mc2.output_file = str(filepath)
+
+    assert len(mc2.outputs_log) == 3
+    assert mc2.outputs_log[0]["apogee"] == pytest.approx(5742.42)
+    assert mc2.outputs_log[1]["x_impact"] == pytest.approx(402.31)
+
+
+def test_import_outputs_from_json(tmp_path):
+    """Tests that outputs can be imported from a JSON file."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "outputs.json"
+
+    # Export first
+    mc.export_outputs_to_json(str(filepath))
+
+    # Create a fresh mock and import
+    mc2 = MockMonteCarloWithLogs()
+    mc2.output_file = str(filepath)
+
+    assert len(mc2.outputs_log) == 3
+    assert mc2.outputs_log[0]["apogee"] == pytest.approx(5742.42)
+
+
+def test_round_trip_outputs_csv(tmp_path):
+    """Tests that outputs survive a CSV export/import round trip."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "outputs.csv"
+
+    mc.export_outputs_to_csv(str(filepath))
+    mc.output_file = str(filepath)
+
+    for i, original in enumerate(MockMonteCarloWithLogs().outputs_log):
+        for key, value in original.items():
+            assert mc.outputs_log[i][key] == pytest.approx(value)
+
+
+def test_round_trip_outputs_json(tmp_path):
+    """Tests that outputs survive a JSON export/import round trip."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "outputs.json"
+
+    mc.export_outputs_to_json(str(filepath))
+    mc.output_file = str(filepath)
+
+    for i, original in enumerate(MockMonteCarloWithLogs().outputs_log):
+        for key, value in original.items():
+            assert mc.outputs_log[i][key] == pytest.approx(value)
+
+
+def test_round_trip_inputs_csv(tmp_path):
+    """Tests that inputs with nested values survive a CSV round trip."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "inputs.csv"
+
+    mc.export_inputs_to_csv(str(filepath), flatten=False)
+    mc.input_file = str(filepath)
+
+    assert mc.inputs_log[0]["parachutes"] == [{"cd_s": 9.84}]
+    assert mc.inputs_log[0]["elevation"] == pytest.approx(1413.6)
+
+
+def test_detect_file_format_unsupported():
+    """Tests that unsupported file extensions raise ValueError."""
+    mc = MockMonteCarloWithLogs()
+
+    with pytest.raises(ValueError, match="Unsupported file extension"):
+        mc._detect_file_format("data.xlsx")
+
+    with pytest.raises(ValueError, match="Unsupported file extension"):
+        mc._detect_file_format("data.parquet")
+
+
+def test_set_num_of_loaded_sims_csv(tmp_path):
+    """Tests that set_num_of_loaded_sims works with CSV files."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "outputs.csv"
+
+    mc.export_outputs_to_csv(str(filepath))
+    mc._output_file = str(filepath)
+    mc.set_num_of_loaded_sims()
+
+    assert mc.num_of_loaded_sims == 3
+
+
+def test_set_num_of_loaded_sims_json(tmp_path):
+    """Tests that set_num_of_loaded_sims works with JSON files."""
+    mc = MockMonteCarloWithLogs()
+    filepath = tmp_path / "outputs.json"
+
+    mc.export_outputs_to_json(str(filepath))
+    mc._output_file = str(filepath)
+    mc.set_num_of_loaded_sims()
+
+    assert mc.num_of_loaded_sims == 3
+
+
+# --- Adaptive Monte Carlo convergence (PR #922) ---
+
+_CI = namedtuple("_CI", ["low", "high"])
+
+
+class ConvergenceMockMonteCarlo(MonteCarlo):
+    """Mock that fakes batch simulation and a scripted confidence-interval
+    width, so ``simulate_convergence``'s stopping decision can be unit-tested
+    without running any real flight simulation."""
+
+    def __init__(self, width_model):
+        # pylint: disable=super-init-not-called
+        self.num_of_loaded_sims = 0
+        self.filename = pathlib.Path("dummy_mc")
+        self._width_model = width_model
+        self.simulate_calls = 0
+
+    def import_outputs(self, *args, **kwargs):  # no-op, avoids file I/O
+        pass
+
+    def simulate(self, number_of_simulations, append=True, **kwargs):
+        # pylint: disable=arguments-differ,unused-argument
+        self.simulate_calls += 1
+        self.num_of_loaded_sims = number_of_simulations
+
+    def estimate_confidence_interval(self, attribute, confidence_level=0.95, **kwargs):
+        # pylint: disable=arguments-differ,unused-argument
+        width = self._width_model(self.num_of_loaded_sims)
+        return _CI(low=0.0, high=width)
+
+
+def test_simulate_convergence_stops_early_when_tolerance_met():
+    """The convergence loop must stop as soon as the CI width drops below the
+    tolerance, well before reaching max_simulations."""
+    # width = 40 / n  ->  50 sims: 0.8 (> 0.5),  100 sims: 0.4 (<= 0.5) -> stop
+    mc = ConvergenceMockMonteCarlo(width_model=lambda n: 40.0 / n)
+
+    history = mc.simulate_convergence(
+        target_attribute="apogee_time",
+        tolerance=0.5,
+        max_simulations=1000,
+        batch_size=50,
+    )
+
+    assert history[-1] <= 0.5
+    assert len(history) == 2  # stopped after the second batch
+    assert mc.num_of_loaded_sims == 100
+    assert mc.num_of_loaded_sims < 1000  # did not exhaust the simulation budget
+
+
+def test_simulate_convergence_runs_until_max_when_not_converging():
+    """When the CI width never drops below the tolerance, the loop must run
+    until max_simulations and never exceed it."""
+    mc = ConvergenceMockMonteCarlo(width_model=lambda n: 10.0)  # constant, > tol
+
+    history = mc.simulate_convergence(
+        target_attribute="apogee_time",
+        tolerance=0.5,
+        max_simulations=200,
+        batch_size=50,
+    )
+
+    assert mc.num_of_loaded_sims == 200
+    assert all(width > 0.5 for width in history)
+    assert len(history) == 4  # 200 / 50 batches
diff --git a/tests/unit/stochastic/test_stochastic_model.py b/tests/unit/stochastic/test_stochastic_model.py
index 0d0a13311..9e35a5330 100644
--- a/tests/unit/stochastic/test_stochastic_model.py
+++ b/tests/unit/stochastic/test_stochastic_model.py
@@ -13,9 +13,11 @@
     ],
 )
 def test_visualize_attributes(request, fixture_name):
-    """Tests the visualize_attributes method of the StochasticModel class. This
-    test verifies if the method returns None, which means that the method is
-    running without breaking.
+    """Tests the visualize_attributes method of the StochasticModel class. It
+    must run without breaking and return the formatted report string (which is
+    also printed), so the report is never silently lost.
     """
     fixture = request.getfixturevalue(fixture_name)
-    assert fixture.visualize_attributes() is None
+    report = fixture.visualize_attributes()
+    assert isinstance(report, str)
+    assert report
diff --git a/tests/unit/stochastic/test_stochastic_parachute.py b/tests/unit/stochastic/test_stochastic_parachute.py
index 09a1497f7..01b5efb91 100644
--- a/tests/unit/stochastic/test_stochastic_parachute.py
+++ b/tests/unit/stochastic/test_stochastic_parachute.py
@@ -1,4 +1,4 @@
-from rocketpy.rocket.parachute import Parachute
+from rocketpy.rocket.parachutes import HemisphericalParachute
 
 
 def test_stochastic_parachute_create_object(stochastic_main_parachute):
@@ -18,4 +18,4 @@ class creates a StochasticParachute object from the randomly generated
     None
     """
     obj = stochastic_main_parachute.create_object()
-    assert isinstance(obj, Parachute)
+    assert isinstance(obj, HemisphericalParachute)
diff --git a/tests/unit/test_encoders.py b/tests/unit/test_encoders.py
new file mode 100644
index 000000000..7f5c2f005
--- /dev/null
+++ b/tests/unit/test_encoders.py
@@ -0,0 +1,75 @@
+"""Unit tests for the RocketPy JSON encoder/decoder helpers."""
+
+import importlib
+import json
+import warnings
+
+import pytest
+
+from rocketpy._encoders import RocketPyDecoder, get_class_from_signature
+from rocketpy.rocket.parachutes import HemisphericalParachute, Parachute
+
+
+def test_get_class_from_signature_remaps_legacy_parachute():
+    """The legacy ``rocketpy.rocket.parachute.Parachute`` signature must remap to
+    the concrete ``HemisphericalParachute`` (the old module was moved and the
+    class became abstract)."""
+    legacy_signature = {
+        "module": "rocketpy.rocket.parachute",
+        "name": "Parachute",
+    }
+    assert get_class_from_signature(legacy_signature) is HemisphericalParachute
+
+
+def test_decode_legacy_parachute_rpy_reconstructs_object():
+    """Regression: parachutes saved in ``.rpy`` files by older versions used the
+    now-deleted ``rocketpy.rocket.parachute`` module path. They must still
+    reconstruct as a concrete parachute object instead of silently returning a
+    raw dict."""
+    legacy_entry = {
+        "signature": {"module": "rocketpy.rocket.parachute", "name": "Parachute"},
+        "name": "drogue",
+        "cd_s": 1.0,
+        "trigger": "apogee",
+        "sampling_rate": 105,
+        "lag": 1.5,
+        "noise": [0, 8.3, 0.5],
+        "radius": 0.5,
+        "drag_coefficient": 1.4,
+        "height": 0.5,
+        "porosity": 0.0432,
+    }
+
+    decoded = json.loads(json.dumps(legacy_entry), cls=RocketPyDecoder)
+
+    assert isinstance(decoded, Parachute)
+    assert isinstance(decoded, HemisphericalParachute)
+    assert decoded.name == "drogue"
+    assert decoded.cd_s == 1.0
+    assert decoded.lag == 1.5
+    assert callable(decoded.triggerfunc)
+
+
+def test_decoder_warns_on_unresolvable_signature():
+    """An unresolvable signature must surface a warning rather than silently
+    returning a raw dictionary (which previously masked data loss)."""
+    entry = {
+        "signature": {"module": "rocketpy.does_not_exist", "name": "Ghost"},
+        "value": 1,
+    }
+    with pytest.warns(UserWarning, match="Could not reconstruct"):
+        decoded = json.loads(json.dumps(entry), cls=RocketPyDecoder)
+    assert decoded == {"value": 1}
+
+
+def test_legacy_parachute_module_import_is_deprecated():
+    """Importing from the old ``rocketpy.rocket.parachute`` module path must
+    still work but emit a ``DeprecationWarning``."""
+    with warnings.catch_warnings():
+        warnings.simplefilter("error", DeprecationWarning)
+        with pytest.raises(DeprecationWarning):
+            importlib.reload(importlib.import_module("rocketpy.rocket.parachute"))
+
+    module = importlib.import_module("rocketpy.rocket.parachute")
+    assert module.Parachute is Parachute
+    assert module.HemisphericalParachute is HemisphericalParachute
diff --git a/tests/unit/test_flight_export_deprecation.py b/tests/unit/test_flight_export_deprecation.py
deleted file mode 100644
index 6fb6952b4..000000000
--- a/tests/unit/test_flight_export_deprecation.py
+++ /dev/null
@@ -1,40 +0,0 @@
-from unittest.mock import patch
-
-import pytest
-
-# TODO: these tests should be deleted after the deprecated methods are removed
-
-
-def test_export_data_deprecated_emits_warning_and_delegates(flight_calisto, tmp_path):
-    """Expect: calling Flight.export_data emits DeprecationWarning and delegates to FlightDataExporter.export_data."""
-    out = tmp_path / "out.csv"
-    with patch(
-        "rocketpy.simulation.flight_data_exporter.FlightDataExporter.export_data"
-    ) as spy:
-        with pytest.warns(DeprecationWarning):
-            flight_calisto.export_data(str(out))
-    spy.assert_called_once()
-
-
-def test_export_pressures_deprecated_emits_warning_and_delegates(
-    flight_calisto_robust, tmp_path
-):
-    """Expect: calling Flight.export_pressures emits DeprecationWarning and delegates to FlightDataExporter.export_pressures."""
-    out = tmp_path / "p.csv"
-    with patch(
-        "rocketpy.simulation.flight_data_exporter.FlightDataExporter.export_pressures"
-    ) as spy:
-        with pytest.warns(DeprecationWarning):
-            flight_calisto_robust.export_pressures(str(out), time_step=0.1)
-    spy.assert_called_once()
-
-
-def test_export_kml_deprecated_emits_warning_and_delegates(flight_calisto, tmp_path):
-    """Expect: calling Flight.export_kml emits DeprecationWarning and delegates to FlightDataExporter.export_kml."""
-    out = tmp_path / "traj.kml"
-    with patch(
-        "rocketpy.simulation.flight_data_exporter.FlightDataExporter.export_kml"
-    ) as spy:
-        with pytest.warns(DeprecationWarning):
-            flight_calisto.export_kml(str(out), time_step=0.5)
-    spy.assert_called_once()
diff --git a/tests/unit/test_parachute_triggers.py b/tests/unit/test_parachute_triggers.py
new file mode 100644
index 000000000..77ca55835
--- /dev/null
+++ b/tests/unit/test_parachute_triggers.py
@@ -0,0 +1,232 @@
+import numpy as np
+import pytest
+
+from rocketpy.rocket.parachutes import HemisphericalParachute
+from rocketpy.simulation.flight import Flight
+
+
+def test_trigger_receives_u_dot():
+    def derivative_func(_t, _y):
+        return np.array([0, 0, 0, 1.0, 2.0, 3.0, 0, 0, 0, 0, 0, 0, 0])
+
+    recorded = {}
+
+    def user_trigger(_p, _h, _y, u_dot):
+        recorded["u_dot"] = np.array(u_dot)
+        return True
+
+    parachute = HemisphericalParachute(
+        name="test",
+        cd_s=1.0,
+        trigger=user_trigger,
+        sampling_rate=100,
+    )
+
+    dummy = type("D", (), {})()
+
+    res = Flight._evaluate_parachute_trigger(
+        dummy,
+        parachute,
+        pressure=0.0,
+        height=10.0,
+        y=np.zeros(13),
+        sensors=[],
+        derivative_func=derivative_func,
+        t=0.0,
+    )
+
+    assert res is True
+    assert "u_dot" in recorded
+    assert np.allclose(recorded["u_dot"][3:6], np.array([1.0, 2.0, 3.0]))
+
+
+def test_trigger_with_u_dot_only():
+    """Test trigger that only expects u_dot (no sensors)."""
+
+    def derivative_func(_t, _y):
+        return np.array([0, 0, 0, -1.0, -2.0, -3.0, 0, 0, 0, 0, 0, 0, 0])
+
+    recorded = {}
+
+    def user_trigger(_p, _h, _y, u_dot):
+        recorded["u_dot"] = np.array(u_dot)
+        return False
+
+    parachute = HemisphericalParachute(
+        name="test_u_dot_only",
+        cd_s=1.0,
+        trigger=user_trigger,
+        sampling_rate=100,
+    )
+
+    dummy = type("D", (), {})()
+
+    res = Flight._evaluate_parachute_trigger(
+        dummy,
+        parachute,
+        pressure=0.0,
+        height=5.0,
+        y=np.zeros(13),
+        sensors=[],
+        derivative_func=derivative_func,
+        t=1.234,
+    )
+
+    assert res is False
+    assert "u_dot" in recorded
+    assert np.allclose(recorded["u_dot"][3:6], np.array([-1.0, -2.0, -3.0]))
+
+
+def test_basic_trigger_does_not_compute_u_dot():
+    def derivative_func(_t, _y):
+        raise RuntimeError("derivative should not be called for legacy triggers")
+
+    called = {}
+
+    def basic_trigger(_p, _h, _y):
+        called["ok"] = True
+        return True
+
+    parachute = HemisphericalParachute(
+        name="basic",
+        cd_s=1.0,
+        trigger=basic_trigger,
+        sampling_rate=100,
+    )
+
+    dummy = type("D", (), {})()
+
+    res = Flight._evaluate_parachute_trigger(
+        dummy,
+        parachute,
+        pressure=0.0,
+        height=0.0,
+        y=np.zeros(13),
+        sensors=[],
+        derivative_func=derivative_func,
+        t=0.0,
+    )
+
+    assert res is True
+    assert called.get("ok", False) is True
+
+
+def test_five_arg_trigger_with_descriptive_names_receives_u_dot():
+    """Regression: a documented 5-arg trigger (p, h, y, sensors, u_dot) with
+    descriptive parameter names must still receive a valid (non-None) u_dot.
+    u_dot delivery used to be gated on the parameter NAME, so such triggers
+    silently received u_dot=None and crashed."""
+
+    def derivative_func(_t, _y):
+        return np.array([0, 0, 0, 4.0, 5.0, 6.0, 0, 0, 0, 0, 0, 0, 0])
+
+    recorded = {}
+
+    def user_trigger(  # pylint: disable=unused-argument
+        pressure, altitude, state, sensor_list, state_derivative
+    ):
+        recorded["u_dot"] = (
+            None if state_derivative is None else np.array(state_derivative)
+        )
+        return True
+
+    parachute = HemisphericalParachute(
+        name="five_arg", cd_s=1.0, trigger=user_trigger, sampling_rate=100
+    )
+    dummy = type("D", (), {})()
+
+    res = Flight._evaluate_parachute_trigger(
+        dummy,
+        parachute,
+        pressure=0.0,
+        height=10.0,
+        y=np.zeros(13),
+        sensors=[],
+        derivative_func=derivative_func,
+        t=0.0,
+    )
+
+    assert res is True
+    assert recorded["u_dot"] is not None
+    assert np.allclose(recorded["u_dot"][3:6], np.array([4.0, 5.0, 6.0]))
+
+
+def test_four_arg_acceleration_trigger_by_name_receives_u_dot():
+    """A 4-arg trigger whose 4th parameter is named like an acceleration must
+    receive u_dot (name-based disambiguation is retained only for the ambiguous
+    4-arg case)."""
+
+    def derivative_func(_t, _y):
+        return np.array([0, 0, 0, -9.0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
+
+    recorded = {}
+
+    def user_trigger(_p, _h, _y, acceleration):
+        recorded["val"] = None if acceleration is None else np.array(acceleration)
+        return True
+
+    parachute = HemisphericalParachute(
+        name="four_arg_acc", cd_s=1.0, trigger=user_trigger, sampling_rate=100
+    )
+    dummy = type("D", (), {})()
+
+    res = Flight._evaluate_parachute_trigger(
+        dummy,
+        parachute,
+        pressure=0.0,
+        height=1.0,
+        y=np.zeros(13),
+        sensors=["S"],
+        derivative_func=derivative_func,
+        t=0.0,
+    )
+
+    assert res is True
+    assert recorded["val"] is not None
+    assert recorded["val"][3] == -9.0
+
+
+def test_four_arg_sensors_trigger_receives_sensors():
+    """A 4-arg trigger whose 4th parameter is named 'sensors' must receive the
+    sensors list and must NOT trigger u_dot computation."""
+
+    def derivative_func(_t, _y):
+        raise RuntimeError("u_dot should not be computed for a sensors trigger")
+
+    recorded = {}
+
+    def user_trigger(_p, _h, _y, sensors):
+        recorded["sensors"] = sensors
+        return False
+
+    parachute = HemisphericalParachute(
+        name="four_arg_sensors", cd_s=1.0, trigger=user_trigger, sampling_rate=100
+    )
+    dummy = type("D", (), {})()
+
+    res = Flight._evaluate_parachute_trigger(
+        dummy,
+        parachute,
+        pressure=0.0,
+        height=1.0,
+        y=np.zeros(13),
+        sensors=["A", "B"],
+        derivative_func=derivative_func,
+        t=0.0,
+    )
+
+    assert res is False
+    assert recorded["sensors"] == ["A", "B"]
+
+
+def test_invalid_arity_trigger_raises_at_construction():
+    """A trigger with fewer than 3 parameters must fail fast at construction
+    rather than mid-simulation."""
+
+    def bad_trigger(_p, _h):
+        return True
+
+    with pytest.raises(TypeError, match="unsupported signature"):
+        HemisphericalParachute(
+            name="bad", cd_s=1.0, trigger=bad_trigger, sampling_rate=100
+        )
diff --git a/tests/unit/test_plots.py b/tests/unit/test_plots.py
index fc412d3b9..d173a0837 100644
--- a/tests/unit/test_plots.py
+++ b/tests/unit/test_plots.py
@@ -1,4 +1,7 @@
+import builtins
 import os
+import sys
+import types
 from unittest.mock import MagicMock, patch
 
 import matplotlib.pyplot as plt
@@ -171,3 +174,200 @@ def test_animate_fluid_volume(example_mass_flow_rate_based_tank_seblm):
     assert os.path.exists("test_fluid_volume.gif")
 
     os.remove("test_fluid_volume.gif")
+
+
+class _DummyVedoActor:
+    """Minimal actor mock that supports the methods used by animation plots."""
+
+    def __init__(self):
+        self.rotations = []
+
+    def c(self, *_args, **_kwargs):
+        return self
+
+    def pos(self, *_args, **_kwargs):
+        return self
+
+    def wireframe(self):
+        return self
+
+    def rotate(self, angle, axis=None, point=None):
+        self.rotations.append((angle, axis, point))
+        return self
+
+    def clone(self):
+        return _DummyVedoActor()
+
+
+class _DummyPlotter:
+    """Minimal plotter mock for non-interactive animation tests."""
+
+    def __init__(self, *_args, **_kwargs):
+        self.escaped = False
+
+    def show(self, *_args, **_kwargs):
+        return self
+
+    def render(self):
+        return None
+
+    def interactive(self):
+        return self
+
+    def close(self):
+        return None
+
+
+def _mock_vedo_module(monkeypatch):
+    """Install a minimal vedo module in sys.modules for tests."""
+
+    vedo_module = types.ModuleType("vedo")
+    vedo_module.Mesh = lambda *_args, **_kwargs: _DummyVedoActor()
+    vedo_module.Box = lambda *_args, **_kwargs: _DummyVedoActor()
+    vedo_module.Line = lambda *_args, **_kwargs: _DummyVedoActor()
+    vedo_module.Plotter = _DummyPlotter
+    vedo_module.settings = types.SimpleNamespace()
+    monkeypatch.setitem(sys.modules, "vedo", vedo_module)
+
+
+def test_animate_trajectory_runs_with_mocked_vedo(flight_calisto, monkeypatch):
+    """Test flight trajectory animation entry point through the plots layer."""
+
+    # Arrange
+    _mock_vedo_module(monkeypatch)
+
+    # Act
+    result = flight_calisto.plots.animate_trajectory(
+        start=0.0,
+        stop=0.001,
+        time_step=0.001,
+    )
+
+    # Assert
+    assert result is None
+
+
+def test_animate_rotate_runs_with_mocked_vedo(flight_calisto, monkeypatch):
+    """Test flight rotation animation entry point through the plots layer."""
+
+    # Arrange
+    _mock_vedo_module(monkeypatch)
+
+    # Act
+    result = flight_calisto.plots.animate_rotate(
+        start=0.0,
+        stop=0.001,
+        time_step=0.001,
+    )
+
+    # Assert
+    assert result is None
+
+
+def test_animate_trajectory_raises_when_vedo_is_missing(flight_calisto, monkeypatch):
+    """Test that an informative ImportError is raised when vedo is unavailable."""
+
+    # Arrange
+    real_import = builtins.__import__
+
+    def import_without_vedo(name, *args, **kwargs):
+        if name == "vedo" or name.startswith("vedo."):
+            raise ImportError("No module named 'vedo'")
+        return real_import(name, *args, **kwargs)
+
+    monkeypatch.setattr(builtins, "__import__", import_without_vedo)
+
+    # Act / Assert
+    with pytest.raises(ImportError, match="optional dependency"):
+        flight_calisto.plots.animate_trajectory(
+            start=0.0,
+            stop=0.001,
+            time_step=0.001,
+        )
+
+
+def test_animate_rotate_raises_when_time_range_is_invalid(flight_calisto, monkeypatch):
+    """Test validation error for invalid animation time range."""
+
+    # Arrange
+    _mock_vedo_module(monkeypatch)
+    # Act / Assert
+    with pytest.raises(ValueError, match="Invalid animation time range"):
+        flight_calisto.plots.animate_rotate(
+            start=1.0,
+            stop=0.5,
+            time_step=0.1,
+        )
+
+
+def test_animate_trajectory_raises_when_stl_file_is_missing(
+    flight_calisto, monkeypatch
+):
+    """Test file validation when STL path does not exist."""
+
+    # Arrange
+    _mock_vedo_module(monkeypatch)
+
+    # Act / Assert
+    with pytest.raises(FileNotFoundError, match="Could not find the 3D model file"):
+        flight_calisto.plots.animate_trajectory(
+            "missing_model.stl",
+            start=0.0,
+            stop=0.1,
+            time_step=0.1,
+        )
+
+
+@pytest.mark.parametrize("invalid_time_step", [0, -0.1])
+def test_animate_trajectory_raises_when_time_step_is_non_positive(
+    flight_calisto, monkeypatch, invalid_time_step
+):
+    """Test validation error when animation time_step is not strictly positive."""
+
+    # Arrange
+    _mock_vedo_module(monkeypatch)
+    # Act / Assert
+    with pytest.raises(ValueError, match="Invalid time_step"):
+        flight_calisto.plots.animate_trajectory(
+            start=0.0,
+            stop=0.1,
+            time_step=invalid_time_step,
+        )
+
+
+def test_animate_rotate_raises_when_stop_exceeds_flight_end(
+    flight_calisto, monkeypatch
+):
+    """Test validation error when stop time exceeds available simulation range."""
+
+    # Arrange
+    _mock_vedo_module(monkeypatch)
+    # Act / Assert
+    with pytest.raises(ValueError, match="Invalid animation time range"):
+        flight_calisto.plots.animate_rotate(
+            start=0.0,
+            stop=flight_calisto.t_final + 0.1,
+            time_step=0.1,
+        )
+
+
+def test_animate_trajectory_raises_when_default_model_is_missing(
+    flight_calisto, monkeypatch
+):
+    """Test failure path when default packaged STL model is unavailable."""
+
+    # Arrange
+    _mock_vedo_module(monkeypatch)
+    monkeypatch.setattr(
+        flight_calisto.plots,
+        "_resolve_animation_model_path",
+        lambda _file_name: "missing_default_model.stl",
+    )
+
+    # Act / Assert
+    with pytest.raises(FileNotFoundError, match="Could not find the 3D model file"):
+        flight_calisto.plots.animate_trajectory(
+            start=0.0,
+            stop=0.1,
+            time_step=0.1,
+        )
diff --git a/tests/unit/test_rail_buttons_bending_moments.py b/tests/unit/test_rail_buttons_bending_moments.py
index b61720d3d..50336fdbc 100644
--- a/tests/unit/test_rail_buttons_bending_moments.py
+++ b/tests/unit/test_rail_buttons_bending_moments.py
@@ -4,6 +4,7 @@
 of the calculate_rail_button_bending_moments method in isolation.
 """
 
+import logging
 import warnings
 
 import matplotlib.pyplot as plt
@@ -199,24 +200,20 @@ def test_rail_button_bending_moments_plot_with_height(flight_calisto_robust):
     plt.close("all")
 
 
-def test_rail_button_bending_moments_plot_without_height(flight_calisto_robust, capsys):
+def test_rail_button_bending_moments_plot_without_height(flight_calisto_robust, caplog):
     """Test that bending moments plot is skipped when button_height is None.
 
     Parameters
     ----------
     flight_calisto_robust : rocketpy.Flight
         Flight fixture with motor and rail buttons.
-    capsys : pytest fixture
-        Captures stdout/stderr.
+    caplog : pytest fixture
+        Captures log records.
     """
     # Ensure button_height is None (it should be by default now)
     flight_calisto_robust.rocket.rail_buttons[0].component.button_height = None
 
-    # Call plot method
-    flight_calisto_robust.plots.rail_buttons_bending_moments()
-
-    # Capture output
-    captured = capsys.readouterr()
+    with caplog.at_level(logging.WARNING, logger="rocketpy"):
+        flight_calisto_robust.plots.rail_buttons_bending_moments()
 
-    # Should print skip message
-    assert "height not defined" in captured.out
+    assert "height not defined" in caplog.text
diff --git a/tests/unit/test_tools.py b/tests/unit/test_tools.py
index fcf67ad37..a1e96eb9e 100644
--- a/tests/unit/test_tools.py
+++ b/tests/unit/test_tools.py
@@ -1,6 +1,7 @@
 import numpy as np
 import pytest
 
+from rocketpy import Environment
 from rocketpy.tools import (
     calculate_cubic_hermite_coefficients,
     euler313_to_quaternions,
@@ -100,3 +101,39 @@ def test_tuple_handler(input_value, expected_output):
 def test_tuple_handler_exceptions(input_value, expected_exception):
     with pytest.raises(expected_exception):
         tuple_handler(input_value)
+
+
+@pytest.mark.parametrize("pressure_conversion_factor", ["hPa", "mbar", "Pa", 100])
+def test_valid_pressure_conversion_factor(pressure_conversion_factor):
+    env = Environment(
+        gravity=9.81,
+        latitude=47.213476,
+        longitude=9.003336,
+        date=(2020, 2, 22, 13),
+        elevation=407,
+    )
+    env.set_atmospheric_model(
+        type="Reanalysis",
+        file="data/weather/bella_lui_weather_data_ERA5.nc",
+        dictionary="ECMWF",
+        pressure_conversion_factor=pressure_conversion_factor,
+    )
+
+
+@pytest.mark.parametrize("pressure_conversion_factor", [-1, "mPa"])
+def test_invalid_pressure_conversion_factor(pressure_conversion_factor):
+    env = Environment(
+        gravity=9.81,
+        latitude=47.213476,
+        longitude=9.003336,
+        date=(2020, 2, 22, 13),
+        elevation=407,
+    )
+
+    with pytest.raises(ValueError):
+        env.set_atmospheric_model(
+            type="Reanalysis",
+            file="data/weather/bella_lui_weather_data_ERA5.nc",
+            dictionary="ECMWF",
+            pressure_conversion_factor=pressure_conversion_factor,
+        )
diff --git a/tests/unit/test_utilities.py b/tests/unit/test_utilities.py
index ce85f01de..6b2eb7d5a 100644
--- a/tests/unit/test_utilities.py
+++ b/tests/unit/test_utilities.py
@@ -1,3 +1,4 @@
+import logging
 import os
 from unittest.mock import patch
 
@@ -117,6 +118,19 @@ def test_fin_flutter_analysis(flight_calisto_custom_wind):
     assert np.isclose(safety_factor(np.inf), 61.669562809629035, atol=5e-3)
 
 
+def test_calculate_stall_wind_velocity_returns_value(flight_calisto_custom_wind):
+    """Regression: the stall wind velocity must be returned (it was previously
+    only logged at INFO level and the method returned None, losing the value).
+    The Flight method and the utilities function must agree."""
+    with pytest.warns(DeprecationWarning):
+        w_v = flight_calisto_custom_wind.calculate_stall_wind_velocity(5)
+    assert isinstance(w_v, float)
+    assert w_v > 0
+    assert utilities.calculate_stall_wind_velocity(
+        flight_calisto_custom_wind, 5
+    ) == pytest.approx(w_v)
+
+
 def test_fin_flutter_analysis_with_prints(flight_calisto_custom_wind):
     """Test fin_flutter_analysis with see_prints=True to cover print branch.
 
@@ -150,16 +164,17 @@ def test_fin_flutter_analysis_with_graphs(mock_show, flight_calisto_custom_wind)
     flight_calisto_custom_wind : Flight
         A Flight object with a rocket with fins.
     """
-    result = utilities.fin_flutter_analysis(
+    flutter_mach, safety_factor = utilities.fin_flutter_analysis(
         fin_thickness=2 / 1000,
         shear_modulus=10e9,
         flight=flight_calisto_custom_wind,
         see_prints=False,
-        see_graphs=True,  # True = returns None!
+        see_graphs=True,
         filename=None,
     )
 
-    assert result is None
+    assert isinstance(flutter_mach, Function)
+    assert isinstance(safety_factor, Function)
     mock_show.assert_called()
 
 
@@ -174,16 +189,19 @@ def test_fin_flutter_analysis_complete_output(mock_show, flight_calisto_custom_w
     flight_calisto_custom_wind : Flight
         A Flight object with a rocket with fins.
     """
-    result = utilities.fin_flutter_analysis(
+    flutter_mach, safety_factor = utilities.fin_flutter_analysis(
         fin_thickness=2 / 1000,
         shear_modulus=10e9,
         flight=flight_calisto_custom_wind,
         see_prints=True,
-        see_graphs=True,  # True = returns None!
+        see_graphs=True,
         filename=None,
     )
 
-    assert result is None
+    # The flutter Mach number and safety factor are always returned, regardless
+    # of see_prints/see_graphs, so the safety-critical results are never lost.
+    assert isinstance(flutter_mach, Function)
+    assert isinstance(safety_factor, Function)
     mock_show.assert_called()
 
 
@@ -328,3 +346,79 @@ def test_load_from_rpy(mock_show):  # pylint: disable=unused-argument
     )
     assert loaded_flight.info() is None
     assert loaded_flight.all_info() is None
+
+
+# --- Logging (rocketpy.utilities.enable_logging) ------------------------------
+
+
+@pytest.fixture(autouse=True)
+def reset_rocketpy_logger():
+    """Reset the rocketpy logger to its original state after each test."""
+    logger = logging.getLogger("rocketpy")
+    original_level = logger.level
+    original_handlers = logger.handlers[:]
+    yield
+    logger.handlers = original_handlers
+    logger.setLevel(original_level)
+
+
+def test_enable_logging_adds_stream_handler():
+    """enable_logging() must attach a StreamHandler to the rocketpy logger."""
+    utilities.enable_logging(level="INFO")
+
+    logger = logging.getLogger("rocketpy")
+    stream_handlers = [
+        h for h in logger.handlers if isinstance(h, logging.StreamHandler)
+    ]
+    assert len(stream_handlers) >= 1
+
+
+def test_enable_logging_sets_correct_level():
+    """enable_logging() must set the requested level on the rocketpy logger."""
+    utilities.enable_logging(level="DEBUG")
+    assert logging.getLogger("rocketpy").level == logging.DEBUG
+
+    utilities.enable_logging(level="WARNING")
+    assert logging.getLogger("rocketpy").level == logging.WARNING
+
+
+def test_enable_logging_no_duplicate_handlers():
+    """Calling enable_logging() twice must not duplicate StreamHandlers."""
+    utilities.enable_logging(level="INFO")
+    utilities.enable_logging(level="INFO")
+
+    logger = logging.getLogger("rocketpy")
+    stream_handlers = [
+        h for h in logger.handlers if isinstance(h, logging.StreamHandler)
+    ]
+    assert len(stream_handlers) == 1
+
+
+def test_enable_logging_replaces_handler_on_level_change():
+    """Calling enable_logging() with a new level must replace the old handler."""
+    utilities.enable_logging(level="WARNING")
+    utilities.enable_logging(level="DEBUG")
+
+    logger = logging.getLogger("rocketpy")
+    stream_handlers = [
+        h for h in logger.handlers if isinstance(h, logging.StreamHandler)
+    ]
+    assert len(stream_handlers) == 1
+    assert logger.level == logging.DEBUG
+
+
+def test_enable_logging_invalid_level_raises():
+    """enable_logging() must raise ValueError for an unrecognised level string."""
+    with pytest.raises(ValueError, match="Invalid logging level"):
+        utilities.enable_logging(level="INVALID")
+
+
+def test_enable_logging_messages_are_captured(caplog):
+    """After enable_logging(), internal rocketpy log messages must be visible."""
+    utilities.enable_logging(level="DEBUG")
+
+    with caplog.at_level(logging.DEBUG, logger="rocketpy"):
+        logger = logging.getLogger("rocketpy.simulation.flight")
+        logger.info("test message from flight")
+
+    assert "test message from flight" in caplog.text