pax_global_header00006660000000000000000000000064141354764050014523gustar00rootroot0000000000000052 comment=16a2e08d630b4d834e211d801e1581288765e7d5 tomli-1.2.2/000077500000000000000000000000001413547640500126515ustar00rootroot00000000000000tomli-1.2.2/.bumpversion.cfg000066400000000000000000000007031413547640500157610ustar00rootroot00000000000000[bumpversion] commit = True tag = True tag_name = {new_version} current_version = 1.2.2 [bumpversion:file:pyproject.toml] search = version = "{current_version}" # DO NOT EDIT THIS LINE MANUALLY. LET bump2version UTILITY DO IT replace = version = "{new_version}" # DO NOT EDIT THIS LINE MANUALLY. LET bump2version UTILITY DO IT [bumpversion:file:tomli/__init__.py] search = __version__ = "{current_version}" replace = __version__ = "{new_version}" tomli-1.2.2/.flake8000066400000000000000000000002331413547640500140220ustar00rootroot00000000000000[flake8] max-line-length = 88 max-complexity = 10 # These checks violate PEP8 so let's ignore them extend-ignore = E203 extend-exclude = */site-packages/* tomli-1.2.2/.github/000077500000000000000000000000001413547640500142115ustar00rootroot00000000000000tomli-1.2.2/.github/workflows/000077500000000000000000000000001413547640500162465ustar00rootroot00000000000000tomli-1.2.2/.github/workflows/tests.yaml000066400000000000000000000053621413547640500203020ustar00rootroot00000000000000name: Tests on: push: branches: [ master ] tags: [ '[0-9]+.[0-9]+.[0-9]+*' ] pull_request: branches: [ master ] jobs: linters: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 with: python-version: '3.8' - name: Install pre-commit run: | pip install pre-commit - name: run linters # pre-commit also runs in pre-commit.ci, but let's have it here too # to block `pypi-publish` job from triggering if pre-commit fails run: | pre-commit run -a tests: runs-on: ${{ matrix.os }} strategy: matrix: python-version: ['pypy-3.7', '3.6', '3.7', '3.8', '3.9', '3.10', '3.11-dev'] os: [ubuntu-latest, macos-latest, windows-latest] continue-on-error: ${{ matrix.python-version == '3.11-dev' }} steps: - uses: actions/checkout@v2 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - name: Install test deps run: | pip install -r tests/requirements.txt - name: Test with pytest run: | # Use 'python -m pytest' to add CWD to sys.path python -m pytest --cov --cov-fail-under=100 - name: Report coverage if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.6' uses: codecov/codecov-action@v2 test-built-package: runs-on: ubuntu-latest # Allow this to fail. A failure is possible even if the package is working, # because test dependencies may rely on a Tomli version incompatible with # the current state. continue-on-error: true steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 with: python-version: '3.7' - name: Install (deps and package) run: | pip install . -r tests/requirements.txt - name: Test with pytest run: | pytest --import-mode=append allgood: runs-on: ubuntu-latest needs: - tests - linters steps: - run: echo "Great success!" pypi-publish: # Only publish if all other jobs succeed needs: [ allgood ] if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags') runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 with: python-version: '3.7' - name: Install build and publish tools run: | pip install build twine - name: Build and check run: | rm -rf dist/ && python -m build twine check --strict dist/* - name: Publish run: | twine upload dist/* env: TWINE_USERNAME: __token__ TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }} tomli-1.2.2/.gitignore000066400000000000000000000034561413547640500146510ustar00rootroot00000000000000# Byte-compiled / optimized / DLL files __pycache__/ *.py[cod] *$py.class # C extensions *.so # Distribution / packaging .Python build/ develop-eggs/ dist/ downloads/ eggs/ .eggs/ lib/ lib64/ parts/ sdist/ var/ wheels/ pip-wheel-metadata/ share/python-wheels/ *.egg-info/ .installed.cfg *.egg MANIFEST # PyInstaller # Usually these files are written by a python script from a template # before PyInstaller builds the exe, so as to inject date/other infos into it. *.manifest *.spec # Installer logs pip-log.txt pip-delete-this-directory.txt # Unit test / coverage reports htmlcov/ .tox/ .nox/ .coverage .coverage.* .cache nosetests.xml coverage.xml *.cover *.py,cover .hypothesis/ .pytest_cache/ # Translations *.mo *.pot # Django stuff: *.log local_settings.py db.sqlite3 db.sqlite3-journal # Flask stuff: instance/ .webassets-cache # Scrapy stuff: .scrapy # Sphinx documentation docs/_build/ # PyBuilder target/ # Jupyter Notebook .ipynb_checkpoints # IPython profile_default/ ipython_config.py # pyenv .python-version # pipenv # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. # However, in case of collaboration, if having platform-specific dependencies or dependencies # having no cross-platform support, pipenv may install dependencies that don't work, or not # install all needed dependencies. #Pipfile.lock # PEP 582; used by e.g. github.com/David-OConnor/pyflow __pypackages__/ # Celery stuff celerybeat-schedule celerybeat.pid # SageMath parsed files *.sage.py # Environments .env .venv env/ venv/ ENV/ env.bak/ venv.bak/ # Spyder project settings .spyderproject .spyproject # Rope project settings .ropeproject # mkdocs documentation /site # mypy .mypy_cache/ .dmypy.json dmypy.json # Pyre type checker .pyre/ # IntelliJ .idea/ # VS Code .vscode/ tomli-1.2.2/.pre-commit-config.yaml000066400000000000000000000032751413547640500171410ustar00rootroot00000000000000repos: - repo: https://github.com/executablebooks/mdformat rev: 427df9181bd4d8e65c1108b912ad47a81628f03b # frozen: 0.7.10 hooks: - id: mdformat additional_dependencies: - mdformat-toc - mdformat-gfm - mdformat-black - repo: https://github.com/asottile/yesqa rev: 644ede78511c02fc6f8e03e014cc1ddcfbf1e1f5 # frozen: v1.2.3 hooks: - id: yesqa additional_dependencies: - flake8-bugbear - flake8-builtins - flake8-comprehensions - repo: https://github.com/PyCQA/isort rev: fd5ba70665a37ec301a1f714ed09336048b3be63 # frozen: 5.9.3 hooks: - id: isort - repo: https://github.com/psf/black rev: 911470a610e47d9da5ea938b0887c3df62819b85 # frozen: 21.9b0 hooks: - id: black - repo: https://github.com/myint/docformatter rev: 67919ee01837761f2d954d7fbb08c12cdd38ec5a # frozen: v1.4 hooks: - id: docformatter - repo: https://github.com/pre-commit/pre-commit-hooks rev: 38b88246ccc552bffaaf54259d064beeee434539 # frozen: v4.0.1 hooks: - id: check-yaml - repo: https://github.com/pre-commit/pygrep-hooks rev: 6f51a66bba59954917140ec2eeeaa4d5e630e6ce # frozen: v1.9.0 hooks: - id: python-use-type-annotations - id: python-check-blanket-noqa - id: python-check-blanket-type-ignore - repo: https://github.com/PyCQA/flake8 rev: cbeb4c9c4137cff1568659fcc48e8b85cddd0c8d # frozen: 4.0.1 hooks: - id: flake8 additional_dependencies: - flake8-bugbear - flake8-builtins - flake8-comprehensions - repo: https://github.com/pre-commit/mirrors-mypy rev: 5cf22ccb774a8be8f47dfe4c1e8c4f177c608cbf # frozen: v0.910-1 hooks: - id: mypy args: ["--scripts-are-modules"] additional_dependencies: - types-python-dateutil - pytest tomli-1.2.2/CHANGELOG.md000066400000000000000000000064131413547640500144660ustar00rootroot00000000000000# Changelog ## **unreleased** - no changes yet ## 1.2.2 - Fixed - Illegal characters in error messages were surrounded by two pairs of quotation marks - Improved - `TOMLDecodeError.__module__` is now the public import path (`tomli`) instead of private import path (`tomli._parser`) - Eliminated an import cycle when `typing.TYPE_CHECKING` is `True`. This allows `sphinx-autodoc-typehints` to resolve type annotations. ## 1.2.1 - Fixed - Raise an error if a carriage return (without a following line feed) is found in a multi-line basic string - Type annotations - Type annotate `load` input as `typing.BinaryIO` only to discourage use of deprecated text file objects. - Packaging - Remove legacy `setup.py` from PyPI source distribution. If you're a packager and absolutely need this file, please create an issue. ## 1.2.0 - Deprecated - Text file objects as input to `load`. Binary file objects should be used instead to avoid opening a TOML file with universal newlines or with an encoding other than UTF-8. ## 1.1.0 - Added - `load` can now take a binary file object ## 1.0.4 - Performance - Minor boost (~4%) ## 1.0.3 - Fixed - Raise `TOMLDecodeError` instead of `ValueError` when parsing dates and datetimes that pass the regex check but don't correspond to a valid date or datetime. - Performance - Improved multiline literal string parsing performance ## 1.0.2 - Performance - Minor boost (~4%) ## 1.0.1 - Performance - A significant boost ## 1.0.0 - Fixed - Raise `TOMLDecodeError` instead of `KeyError` when overwriting implicitly in an inline table ## 0.2.10 - Fixed - Raise `TOMLDecodeError` if overwriting nested inline tables from the parent inline - Raise `TOMLDecodeError` if escaped Unicode character is not a Unicode scalar value - Performance - Increased parsing speed of single line basic strings, and multi-line literal and basic strings ## 0.2.9 - Fixed - `TOMLDecodeError` now raised when opening a table implicitly created by a key/value pair - Don't error when two array-of-tables items open a subtable with the same name - Don't error when opening parent table of an already defined array-of-tables item ## 0.2.8 - Performance - Significant boost to comment parsing speed ## 0.2.7 - Added - Improved `TOMLDecodeError` error messages. Line and column are included when applicable. ## 0.2.6 - Performance - Over 5% boost ## 0.2.5 - Fixed - Made exception type `TOMLDecodeError` when overwriting a value with a deeply nested table ## 0.2.4 - Fixed - `TOMLDecodeError` is now raised when attempting to overwrite a value in an inline table's or array's namespace with a table definition ## 0.2.3 - Fixed - Error type was not TOMLDecodeError in some obscure cases ## 0.2.2 - Added - `tomli.load` for parsing IO streams returned by `open()` - `parse_float` keyword argument to `tomli.loads`. Allows parsing TOML floats to a non-float type in Python. ## 0.2.1 - Fixed - `TOMLDecodeError` is now raised for duplicate keys in inline tables, as opposed to silently overriding the previous value ## 0.2.0 - Changed - Project name to Tomli - Performance - A performance boost ## 0.1.0 - Added - `tomli.loads` for parsing TOML strings - `tomli.TOMLDecodeError` that is raised for parse errors tomli-1.2.2/LICENSE000066400000000000000000000020601413547640500136540ustar00rootroot00000000000000MIT License Copyright (c) 2021 Taneli Hukkinen Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. tomli-1.2.2/README.md000066400000000000000000000174721413547640500141430ustar00rootroot00000000000000[![Build Status](https://github.com/hukkin/tomli/workflows/Tests/badge.svg?branch=master)](https://github.com/hukkin/tomli/actions?query=workflow%3ATests+branch%3Amaster+event%3Apush) [![codecov.io](https://codecov.io/gh/hukkin/tomli/branch/master/graph/badge.svg)](https://codecov.io/gh/hukkin/tomli) [![PyPI version](https://img.shields.io/pypi/v/tomli)](https://pypi.org/project/tomli) # Tomli > A lil' TOML parser **Table of Contents** *generated with [mdformat-toc](https://github.com/hukkin/mdformat-toc)* - [Intro](#intro) - [Installation](#installation) - [Usage](#usage) - [Parse a TOML string](#parse-a-toml-string) - [Parse a TOML file](#parse-a-toml-file) - [Handle invalid TOML](#handle-invalid-toml) - [Construct `decimal.Decimal`s from TOML floats](#construct-decimaldecimals-from-toml-floats) - [FAQ](#faq) - [Why this parser?](#why-this-parser) - [Is comment preserving round-trip parsing supported?](#is-comment-preserving-round-trip-parsing-supported) - [Is there a `dumps`, `write` or `encode` function?](#is-there-a-dumps-write-or-encode-function) - [How do TOML types map into Python types?](#how-do-toml-types-map-into-python-types) - [Performance](#performance) ## Intro Tomli is a Python library for parsing [TOML](https://toml.io). Tomli is fully compatible with [TOML v1.0.0](https://toml.io/en/v1.0.0). ## Installation ```bash pip install tomli ``` ## Usage ### Parse a TOML string ```python import tomli toml_str = """ gretzky = 99 [kurri] jari = 17 """ toml_dict = tomli.loads(toml_str) assert toml_dict == {"gretzky": 99, "kurri": {"jari": 17}} ``` ### Parse a TOML file ```python import tomli with open("path_to_file/conf.toml", "rb") as f: toml_dict = tomli.load(f) ``` The file must be opened in binary mode (with the `"rb"` flag). Binary mode will enforce decoding the file as UTF-8 with universal newlines disabled, both of which are required to correctly parse TOML. Support for text file objects is deprecated for removal in the next major release. ### Handle invalid TOML ```python import tomli try: toml_dict = tomli.loads("]] this is invalid TOML [[") except tomli.TOMLDecodeError: print("Yep, definitely not valid.") ``` Note that while the `TOMLDecodeError` type is public API, error messages of raised instances of it are not. Error messages should not be assumed to stay constant across Tomli versions. ### Construct `decimal.Decimal`s from TOML floats ```python from decimal import Decimal import tomli toml_dict = tomli.loads("precision-matters = 0.982492", parse_float=Decimal) assert toml_dict["precision-matters"] == Decimal("0.982492") ``` Note that `decimal.Decimal` can be replaced with another callable that converts a TOML float from string to a Python type. The `decimal.Decimal` is, however, a practical choice for use cases where float inaccuracies can not be tolerated. Illegal types include `dict`, `list`, and anything that has the `append` attribute. Parsing floats into an illegal type results in undefined behavior. ## FAQ ### Why this parser? - it's lil' - pure Python with zero dependencies - the fastest pure Python parser [\*](#performance): 15x as fast as [tomlkit](https://pypi.org/project/tomlkit/), 2.4x as fast as [toml](https://pypi.org/project/toml/) - outputs [basic data types](#how-do-toml-types-map-into-python-types) only - 100% spec compliant: passes all tests in [a test set](https://github.com/toml-lang/compliance/pull/8) soon to be merged to the official [compliance tests for TOML](https://github.com/toml-lang/compliance) repository - thoroughly tested: 100% branch coverage ### Is comment preserving round-trip parsing supported? No. The `tomli.loads` function returns a plain `dict` that is populated with builtin types and types from the standard library only. Preserving comments requires a custom type to be returned so will not be supported, at least not by the `tomli.loads` and `tomli.load` functions. Look into [TOML Kit](https://github.com/sdispater/tomlkit) if preservation of style is what you need. ### Is there a `dumps`, `write` or `encode` function? [Tomli-W](https://github.com/hukkin/tomli-w) is the write-only counterpart of Tomli, providing `dump` and `dumps` functions. The core library does not include write capability, as most TOML use cases are read-only, and Tomli intends to be minimal. ### How do TOML types map into Python types? | TOML type | Python type | Details | | ---------------- | ------------------- | ------------------------------------------------------------ | | Document Root | `dict` | | | Key | `str` | | | String | `str` | | | Integer | `int` | | | Float | `float` | | | Boolean | `bool` | | | Offset Date-Time | `datetime.datetime` | `tzinfo` attribute set to an instance of `datetime.timezone` | | Local Date-Time | `datetime.datetime` | `tzinfo` attribute set to `None` | | Local Date | `datetime.date` | | | Local Time | `datetime.time` | | | Array | `list` | | | Table | `dict` | | | Inline Table | `dict` | | ## Performance The `benchmark/` folder in this repository contains a performance benchmark for comparing the various Python TOML parsers. The benchmark can be run with `tox -e benchmark-pypi`. Running the benchmark on my personal computer output the following: ```console foo@bar:~/dev/tomli$ tox -e benchmark-pypi benchmark-pypi installed: attrs==19.3.0,click==7.1.2,pytomlpp==1.0.2,qtoml==0.3.0,rtoml==0.7.0,toml==0.10.2,tomli==1.1.0,tomlkit==0.7.2 benchmark-pypi run-test-pre: PYTHONHASHSEED='2658546909' benchmark-pypi run-test: commands[0] | python -c 'import datetime; print(datetime.date.today())' 2021-07-23 benchmark-pypi run-test: commands[1] | python --version Python 3.8.10 benchmark-pypi run-test: commands[2] | python benchmark/run.py Parsing data.toml 5000 times: ------------------------------------------------------ parser | exec time | performance (more is better) -----------+------------+----------------------------- rtoml | 0.901 s | baseline (100%) pytomlpp | 1.08 s | 83.15% tomli | 3.89 s | 23.15% toml | 9.36 s | 9.63% qtoml | 11.5 s | 7.82% tomlkit | 56.8 s | 1.59% ``` The parsers are ordered from fastest to slowest, using the fastest parser as baseline. Tomli performed the best out of all pure Python TOML parsers, losing only to pytomlpp (wraps C++) and rtoml (wraps Rust). tomli-1.2.2/benchmark/000077500000000000000000000000001413547640500146035ustar00rootroot00000000000000tomli-1.2.2/benchmark/LICENSE000066400000000000000000000021501413547640500156060ustar00rootroot00000000000000MIT License Copyright (c) 2020 Bob Fang (bob.fang.london@gmail.com) Copyright (c) 2021 Taneli Hukkinen Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. tomli-1.2.2/benchmark/README.md000066400000000000000000000006261413547640500160660ustar00rootroot00000000000000# Benchmark ## Acknowledgments This benchmark was shamelessly copied from [pytomlpp](https://github.com/bobfang1992/pytomlpp/tree/e6b03726f8347c6a6757f520ad1b5fab68ed8534/benchmark) repository and edited. Credit goes to the authors of that project. ## Running ### Against the local Tomli state ```bash tox -e benchmark ``` ### Against the latest Tomli PyPI release ```bash tox -e benchmark-pypi ``` tomli-1.2.2/benchmark/data.toml000066400000000000000000000076651413547640500164270ustar00rootroot00000000000000addition-used = false afraid-boiling-draconian = 1916-12-15T11:26:42+11:26 boiling-whip = 12:23:17.000129 charming = 16771 close-unbecoming = 14:49:02 contain-terrible-neck = 1928-11-07T06:30:56 creature = 0.4857 crowded-profuse-capable = 1932-05-28 deserted-cross-creature = 1931-12-26T04:31:04 deserted-heavy = [ 2014-02-08, 1984-03-16, 1910-08-05 ] fabulous = 0.3388 ghost-birds-legal = 1989-09-02 grandfather-weary = 10216 haircut-dreary-broken = 'unadvised rejoice lewd crime grandfather rice imperfect' harm-snow = 0.6724 leather-aromatic-rabbit = false license-harm = 1987-08-15T15:30:51+03:24 naughty-self-close = 1916-09-21T01:53:27-02:59 neck = 29653 neck-crime-wistful = 1998-12-07 rest-afraid = [ 1912-06-23T07:00:07-07:46, # this is a datetime 1910-11-17T13:10:34, # pretty sure this is also a datetime 2014-08-03T04:37:12-06:36, # and this 1966-11-22T18:08:23+06:10, # and this 1985-03-01T08:11:38, # what about this? 1976-09-04T20:46:46+00:29, # yes that also 1964-05-18T20:13:27-01:25, # ... 1961-10-14T11:03:51.011555+06:23, 2005-07-13T02:57:15-01:46, # wonder how many comments there are typically in 2007-02-01T17:09:54-08:45, # a TOML file of this size 1952-03-06T09:15:04+01:44, 1962-12-25T23:00:11+04:28 ] rotten-best = 0.0325 run-curious = true run-meaty = 04:40:20.003312 scintillating-cream = 0.2604 sisters-playground = 'week spiritual pause insidious uptight' spiritual-borrow-messy = 16:49:32 surprise-jail-babies = 2008-01-01 title-unbiased = 1958-10-08 unbecoming-scene-lewd = true worried-spicy = 23:03:54 [contain] ghost = 0.2471 tank-lackadaisical = 1945-02-18T22:22:27+01:41 [contain.righteous-imperfect-remarkable] ticket = 0.2412 voyage = 'prefer silky night draconian three dreary decisive' wilderness-draconian = 04:58:17 [contain.righteous-imperfect-remarkable.deeply-night-gold] legal = 1981-07-04 righteous = [ false, true, false, false, true ] wilderness = 1900-12-24 [crime] boiling-excuse-incandescent = 31173 flat-rejoice = 0.8682 furtive = 6866 heavy-memory = 5545 lackadaisical-terrible-overjoyed = [ 'harm acceptable naughty pause', 'page anxious threatening lewd' ] reject-aromatic = [ false, true, true, true, false, true ] reject-naughty = 11229 scintillating-bake-harm = 0.8258 [license-bat] adorable-blind-string = 1961-08-14 bat = 1939-10-28 blind-wilderness = 2004-07-14 [rapid] borrow = true jail-weary-furtive = 'room' protective-sulky = 4737 room-decisive-unbiased = 1998-11-01T12:23:58 soap = 1985-05-06 sprout-rich = 0.6026 [rapid.clean-leather] blood-snow-mark = true equable = 0.2923 fabulous = 1979-07-24T00:53:39+06:22 glorious-threatening = true lewd-dull = 02:40:53.027288 [run-overjoyed] creature-cheerful = 11071 respect-history-anxious = 0.4637 vessel = 'curious' [inline-tables] table1 ={ the-text-in-this = 'file is weeiiird' , autogenerated-perhaps= 1199999 , subtableee = {blii=false}} table2 = { arr = [ { id = 0 }, { id = 1}, { id = 2} ] } [[dynamic-arrays.products]] name = "juusto" [[dynamic-arrays.products]] name = "tee \t\t kannu" [[dynamic-arrays.products]] name = "\n\nkahvi" [[dynamic-arrays.products]] name = "\"riisi\"" [[dynamic-arrays.products]] name = "puuro \\ riisipuuro" # Fusce sit amet risus vel sapien vestibulum interdum. Aliquam finibus # finibus nibh, sed mattis nulla lacinia in. Nunc ac volutpat massa, # at fringilla dui. In dignissim pellentesque luctus. Cras ac ex metus. # Duis ut molestie augue. Donec vitae nulla massa. Sed blandit diam sit # amet mauris posuere consectetur. [multiline-strings] literal-str = ''' Liirum laarum liirum laarum. Liirum laarum liirum laarum. Liirum laarum liirum laarum. ''' basic-str = """\ Escape whitespace. \ Liirum laarum liirum laarum.\ueeee\U000eeeee\u1234 """ tomli-1.2.2/benchmark/requirements.txt000066400000000000000000000002771413547640500200750ustar00rootroot00000000000000# NOTE # Tomli itself is not included here because tox is used to read # this file and install the deps, and it handles the Tomli # installation separately. pytomlpp toml tomlkit qtoml rtoml tomli-1.2.2/benchmark/run.py000066400000000000000000000044441413547640500157670ustar00rootroot00000000000000from __future__ import annotations from collections.abc import Callable from pathlib import Path import timeit import pytomlpp import qtoml import rtoml import toml import tomlkit import tomli def benchmark( name: str, run_count: int, func: Callable, col_width: tuple, compare_to: float | None = None, ) -> float: placeholder = "Running..." print(f"{name:>{col_width[0]}} | {placeholder}", end="", flush=True) time_taken = timeit.timeit(func, number=run_count) print("\b" * len(placeholder), end="") time_suffix = " s" print(f"{time_taken:{col_width[1]-len(time_suffix)}.3g}{time_suffix}", end="") if compare_to is None: print(" | baseline (100%)", end="") else: delta = compare_to / time_taken print(f" | {delta:.2%}", end="") print() return time_taken def run(run_count: int) -> None: data_path = Path(__file__).parent / "data.toml" test_data = data_path.read_bytes().decode() # qtoml has a bug making it crash without this newline normalization test_data = test_data.replace("\r\n", "\n") col_width = (10, 10, 28) col_head = ("parser", "exec time", "performance (more is better)") print(f"Parsing data.toml {run_count} times:") print("-" * col_width[0] + "---" + "-" * col_width[1] + "---" + col_width[2] * "-") print( f"{col_head[0]:>{col_width[0]}} | {col_head[1]:>{col_width[1]}} | {col_head[2]}" ) print("-" * col_width[0] + "-+-" + "-" * col_width[1] + "-+-" + col_width[2] * "-") # fmt: off baseline = benchmark("rtoml", run_count, lambda: rtoml.loads(test_data), col_width) # noqa: E501 benchmark("pytomlpp", run_count, lambda: pytomlpp.loads(test_data), col_width, compare_to=baseline) # noqa: E501 benchmark("tomli", run_count, lambda: tomli.loads(test_data), col_width, compare_to=baseline) # noqa: E501 benchmark("toml", run_count, lambda: toml.loads(test_data), col_width, compare_to=baseline) # noqa: E501 benchmark("qtoml", run_count, lambda: qtoml.loads(test_data), col_width, compare_to=baseline) # noqa: E501 benchmark("tomlkit", run_count, lambda: tomlkit.parse(test_data), col_width, compare_to=baseline) # noqa: E501 # fmt: on if __name__ == "__main__": run(5000) tomli-1.2.2/fuzzer/000077500000000000000000000000001413547640500141765ustar00rootroot00000000000000tomli-1.2.2/fuzzer/fuzz.py000066400000000000000000000041241413547640500155470ustar00rootroot00000000000000import atheris with atheris.instrument_imports(): from math import isnan import sys import warnings import tomli_w import tomli # Disable any caching used so that the same lines of code run # on a given input consistently. tomli._re.cached_tz = tomli._re.cached_tz.__wrapped__ # Suppress all warnings. warnings.simplefilter("ignore") def test_one_input(input_bytes: bytes) -> None: # We need a Unicode string, not bytes fdp = atheris.FuzzedDataProvider(input_bytes) data = fdp.ConsumeUnicode(sys.maxsize) try: toml_obj = tomli.loads(data) except (tomli.TOMLDecodeError, RecursionError): return except BaseException: print_err(data) raise try: recovered_data = tomli_w.dumps(toml_obj) except RecursionError: return except BaseException: print_err(data) raise roundtripped_obj = tomli.loads(recovered_data) normalize_toml_obj(roundtripped_obj) normalize_toml_obj(toml_obj) if roundtripped_obj != toml_obj: sys.stderr.write( f"Original dict:\n{toml_obj}\nRoundtripped dict:\n{roundtripped_obj}\n" ) sys.stderr.flush() print_err(data) raise Exception("Dicts not equal after roundtrip") def print_err(data): codepoints = [hex(ord(x)) for x in data] sys.stderr.write(f"Input was {type(data)}:\n{data}\nCodepoints:\n{codepoints}\n") sys.stderr.flush() def normalize_toml_obj(toml_obj: dict) -> None: """Make NaNs equal when compared (without using recursion).""" to_process = [toml_obj] while to_process: cont = to_process.pop() for k, v in cont.items() if isinstance(cont, dict) else enumerate(cont): if isinstance(v, float) and isnan(v): cont[k] = "nan" elif isinstance(v, (dict, list)): to_process.append(v) def main(): # For possible options, see https://llvm.org/docs/LibFuzzer.html#options fuzzer_options = sys.argv atheris.Setup(fuzzer_options, test_one_input) atheris.Fuzz() if __name__ == "__main__": main() tomli-1.2.2/fuzzer/requirements.txt000066400000000000000000000001011413547640500174520ustar00rootroot00000000000000# sudo apt-get install clang wheel atheris==2.0.3 tomli_w>=0.2.2 tomli-1.2.2/pyproject.toml000066400000000000000000000117621413547640500155740ustar00rootroot00000000000000[build-system] requires = ["flit_core>=3.2.0,<4"] build-backend = "flit_core.buildapi" [project] name = "tomli" version = "1.2.2" # DO NOT EDIT THIS LINE MANUALLY. LET bump2version UTILITY DO IT description = "A lil' TOML parser" authors = [ { name = "Taneli Hukkinen", email = "hukkin@users.noreply.github.com" }, ] license = { file = "LICENSE" } requires-python = ">=3.6" readme = "README.md" classifiers = [ "License :: OSI Approved :: MIT License", "Operating System :: MacOS", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Python Modules", "Typing :: Typed", ] keywords = ["toml"] [project.urls] "Homepage" = "https://github.com/hukkin/tomli" "Changelog" = "https://github.com/hukkin/tomli/blob/master/CHANGELOG.md" [tool.flit.sdist] exclude = [ "tests/", "benchmark/", "fuzzer/", ".*", "CHANGELOG.md", ] [tool.isort] # Force imports to be sorted by module, independent of import type force_sort_within_sections = true # Group first party and local folder imports together no_lines_before = ["LOCALFOLDER"] # Configure isort to work without access to site-packages known_first_party = ["tomli", "tests"] # Settings for Black compatibility profile = "black" [tool.pytest.ini_options] addopts = "--strict-markers --strict-config" xfail_strict = true [tool.tox] legacy_tox_ini = ''' [tox] # Only run pytest envs when no args given to tox envlist = py{36,37,38,39,310} isolated_build = True [testenv:py{36,37,38,39,310}] description = run tests against unpackaged source skip_install = True deps = -r tests/requirements.txt commands = # Use 'python -m pytest' to add CWD to sys.path python -m pytest {posargs} [testenv:py{36,37,38,39,310}-package] description = run tests against a built package (can fail, in theory, if test dependencies need a tomli version incompatible with local state) deps = -r tests/requirements.txt commands = pytest --import-mode=append {posargs} [testenv:profile] description = run profiler (use e.g. `firefox .tox/prof/combined.svg` to open) skip_install = True setenv = PROFILER_ITERATIONS=1000 deps = -r tests/requirements.txt pytest-profiling commands = pytest tests/test_for_profiler.py --profile-svg --pstats-dir "{toxworkdir}/prof" python -c 'import pathlib; print("profiler svg output under file://\{0\}".format(pathlib.Path(r"{toxworkdir}") / "prof" / "combined.svg"))' [testenv:pre-commit] description = run linters skip_install = True deps = pre-commit commands = pre-commit run {posargs:--all} [testenv:benchmark] description = run the benchmark script against a local Tomli version deps = -r benchmark/requirements.txt commands = python -c 'import datetime; print(datetime.date.today())' python --version python benchmark/run.py [testenv:benchmark-pypi] description = run the benchmark script against the latest Tomli in PyPI skip_install = True deps = tomli -r benchmark/requirements.txt commands = python -c 'import datetime; print(datetime.date.today())' python --version python benchmark/run.py [testenv:fuzz] description = run the fuzzer against a local Tomli version (needs "apt install clang") deps = -r fuzzer/requirements.txt allowlist_externals = mkdir cp commands = # Create a folder for persistent corpus and use benchmark data as initial seed mkdir -p {toxworkdir}/fuzzer-corpus cp -n benchmark/data.toml {toxworkdir}/fuzzer-corpus/data.toml # Run fuzzer python fuzzer/fuzz.py {toxworkdir}/fuzzer-corpus {posargs:-len_control=10000} ''' [tool.coverage.run] branch = true omit = ["tests/*", "*/site-packages/*"] [tool.coverage.report] # Regexes for lines to exclude from consideration exclude_lines = [ # Have to re-enable the standard pragma "pragma: no cover", # Code for static type checkers "if TYPE_CHECKING:", # Scripts 'if __name__ == .__main__.:', ] [tool.mypy] show_error_codes = true warn_unreachable = true warn_unused_ignores = true warn_redundant_casts = true warn_unused_configs = true # Disabling incremental mode is required for `warn_unused_configs = true` to work incremental = false disallow_untyped_defs = true check_untyped_defs = true strict_equality = true implicit_reexport = false no_implicit_optional = true [[tool.mypy.overrides]] module = "tests.*" disallow_untyped_defs = false [[tool.mypy.overrides]] # This matches `benchmark/run.py`. Since benchmark/ is # not a package, we use the module name here. module = "run" ignore_errors = true [[tool.mypy.overrides]] # This matches `fuzzer/fuzz.py`. module = "fuzz" ignore_errors = true tomli-1.2.2/tests/000077500000000000000000000000001413547640500140135ustar00rootroot00000000000000tomli-1.2.2/tests/__init__.py000066400000000000000000000000001413547640500161120ustar00rootroot00000000000000tomli-1.2.2/tests/burntsushi.py000066400000000000000000000045171413547640500166020ustar00rootroot00000000000000"""Utilities for tests that are in the "burntsushi" format.""" import datetime from typing import Any import dateutil.parser import pytest def convert(obj): # noqa: C901 if isinstance(obj, str): return {"type": "string", "value": obj} elif isinstance(obj, bool): return {"type": "boolean", "value": str(obj).lower()} elif isinstance(obj, int): return {"type": "integer", "value": str(obj)} elif isinstance(obj, float): return {"type": "float", "value": str(obj)} elif isinstance(obj, datetime.datetime): val = normalize_datetime_str(obj.isoformat()) if obj.tzinfo: return {"type": "offset datetime", "value": val} return {"type": "local datetime", "value": val} elif isinstance(obj, datetime.time): return { "type": "local time", "value": str(obj), } elif isinstance(obj, datetime.date): return { "type": "local date", "value": str(obj), } elif isinstance(obj, list): return { "type": "array", "value": [convert(i) for i in obj], } elif isinstance(obj, dict): return {k: convert(v) for k, v in obj.items()} raise Exception("unsupported type") def normalize(d: dict) -> dict: normalized: Any = {} for k, v in d.items(): if isinstance(v, list): normalized[k] = [normalize(item) for item in v] elif isinstance(v, dict): if "type" in v and "value" in v: if v["type"] == "float": normalized[k] = v.copy() normalized[k]["value"] = normalize_float_str(normalized[k]["value"]) elif v["type"] in {"offset datetime", "local datetime"}: normalized[k] = v.copy() normalized[k]["value"] = normalize_datetime_str( normalized[k]["value"] ) else: normalized[k] = v else: normalized[k] = v else: pytest.fail("Burntsushi fixtures should be dicts/lists only") return normalized def normalize_datetime_str(dt_str: str) -> str: return dateutil.parser.isoparse(dt_str).isoformat() def normalize_float_str(float_str: str) -> str: return str(float(float_str)) tomli-1.2.2/tests/data/000077500000000000000000000000001413547640500147245ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/000077500000000000000000000000001413547640500162325ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/000077500000000000000000000000001413547640500176605ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/array-missing-comma.toml000066400000000000000000000000241413547640500244300ustar00rootroot00000000000000arrr = [true false] tomli-1.2.2/tests/data/extras/invalid/array-of-tables/000077500000000000000000000000001413547640500226505ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/array-of-tables/overwrite-array-in-parent.toml000066400000000000000000000000701413547640500305770ustar00rootroot00000000000000[[parent-table.arr]] [parent-table] not-arr = 1 arr = 2 tomli-1.2.2/tests/data/extras/invalid/array/000077500000000000000000000000001413547640500207765ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/array/file-end-after-val.toml000066400000000000000000000000041413547640500252270ustar00rootroot00000000000000a=[1tomli-1.2.2/tests/data/extras/invalid/array/unclosed-after-item.toml000066400000000000000000000000051413547640500255350ustar00rootroot00000000000000v=[1,tomli-1.2.2/tests/data/extras/invalid/array/unclosed-empty.toml000066400000000000000000000000031413547640500246340ustar00rootroot00000000000000v=[tomli-1.2.2/tests/data/extras/invalid/basic-str-ends-in-escape.toml000066400000000000000000000000341413547640500252320ustar00rootroot00000000000000"backslash is the last char\tomli-1.2.2/tests/data/extras/invalid/boolean/000077500000000000000000000000001413547640500212775ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/boolean/invalid-false-casing.toml000066400000000000000000000000111413547640500261440ustar00rootroot00000000000000val=falsEtomli-1.2.2/tests/data/extras/invalid/boolean/invalid-true-casing.toml000066400000000000000000000000101413547640500260300ustar00rootroot00000000000000val=trUetomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/000077500000000000000000000000001413547640500230315ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/array-missing-separator.toml000066400000000000000000000000221413547640500305030ustar00rootroot00000000000000wrong = [ 1 2 3 ] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/array-no-close.toml000066400000000000000000000000271413547640500265600ustar00rootroot00000000000000long_array = [ 1, 2, 3 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/array-of-tables-1.toml000066400000000000000000000000671413547640500270570ustar00rootroot00000000000000# INVALID TOML DOC fruit = [] [[fruit]] # Not allowed tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/array-of-tables-2.toml000066400000000000000000000002741413547640500270600ustar00rootroot00000000000000# INVALID TOML DOC [[fruit]] name = "apple" [[fruit.variety]] name = "red delicious" # This table conflicts with the previous table [fruit.variety] name = "granny smith" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/bool-mixed-case.toml000066400000000000000000000000161413547640500266730ustar00rootroot00000000000000valid = False tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/bool-wrong-case-false.toml000066400000000000000000000000121413547640500300050ustar00rootroot00000000000000b = FALSE tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/bool-wrong-case-true.toml000066400000000000000000000000111413547640500276710ustar00rootroot00000000000000a = TRUE tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/datetime-malformed-no-leads.toml000066400000000000000000000000371413547640500311660ustar00rootroot00000000000000no-leads = 1987-7-05T17:45:00Z tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/datetime-malformed-no-secs.toml000066400000000000000000000000341413547640500310300ustar00rootroot00000000000000no-secs = 1987-07-05T17:45Z tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/datetime-malformed-no-t.toml000066400000000000000000000000331413547640500303350ustar00rootroot00000000000000no-t = 1987-07-0517:45:00Z tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/datetime-malformed-with-milli.toml000066400000000000000000000000441413547640500315410ustar00rootroot00000000000000with-milli = 1987-07-5T17:45:00.12Z tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/duplicate-key-table.toml000066400000000000000000000000631413547640500275520ustar00rootroot00000000000000[fruit] type = "apple" [fruit.type] apple = "yes" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/duplicate-keys.toml000066400000000000000000000000311413547640500266430ustar00rootroot00000000000000dupe = false dupe = true tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/duplicate-table-array.toml000066400000000000000000000000161413547640500300760ustar00rootroot00000000000000[tbl] [[tbl]] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/duplicate-table-array2.toml000066400000000000000000000000161413547640500301600ustar00rootroot00000000000000[[tbl]] [tbl] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/duplicate-tables.toml000066400000000000000000000000101413547640500271370ustar00rootroot00000000000000[a] [a] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/empty-implicit-table.toml000066400000000000000000000000231413547640500277540ustar00rootroot00000000000000[naughty..naughty] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/empty-table.toml000066400000000000000000000000031413547640500261420ustar00rootroot00000000000000[] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/float-leading-zero-neg.toml000066400000000000000000000000261413547640500301560ustar00rootroot00000000000000leading-zero = -03.14 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/float-leading-zero-pos.toml000066400000000000000000000000261413547640500302060ustar00rootroot00000000000000leading-zero = +03.14 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/float-leading-zero.toml000066400000000000000000000000251413547640500274060ustar00rootroot00000000000000leading-zero = 03.14 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/float-no-leading-zero.toml000066400000000000000000000000441413547640500300210ustar00rootroot00000000000000answer = .12345 neganswer = -.12345 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/float-no-trailing-digits.toml000066400000000000000000000000341413547640500305320ustar00rootroot00000000000000answer = 1. neganswer = -1. tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/float-underscore-after-point.toml000066400000000000000000000000131413547640500314220ustar00rootroot00000000000000bad = 1._2 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/float-underscore-after.toml000066400000000000000000000000131413547640500302730ustar00rootroot00000000000000bad = 1.2_ tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/float-underscore-before-point.toml000066400000000000000000000000131413547640500315630ustar00rootroot00000000000000bad = 1_.2 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/float-underscore-before.toml000066400000000000000000000000131413547640500304340ustar00rootroot00000000000000bad = _1.2 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/inline-table-linebreak.toml000066400000000000000000000000241413547640500302170ustar00rootroot00000000000000simple = { a = 1 } tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-leading-zero-neg.toml000066400000000000000000000000241413547640500305040ustar00rootroot00000000000000leading-zero = -012 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-leading-zero-pos.toml000066400000000000000000000000241413547640500305340ustar00rootroot00000000000000leading-zero = +012 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-leading-zero.toml000066400000000000000000000000231413547640500277340ustar00rootroot00000000000000leading-zero = 012 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-negative-bin.toml000066400000000000000000000000231413547640500277240ustar00rootroot00000000000000bin1 = -0b11010110 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-negative-hex.toml000066400000000000000000000000141413547640500277400ustar00rootroot00000000000000hex = -0xff tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-negative-oct.toml000066400000000000000000000000151413547640500277420ustar00rootroot00000000000000oct1 = -0o99 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-underscore-after.toml000066400000000000000000000000131413547640500306230ustar00rootroot00000000000000bad = 123_ tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-underscore-before-oct.toml000066400000000000000000000000141413547640500315500ustar00rootroot00000000000000oct1 = 0o_1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-underscore-before.toml000066400000000000000000000000131413547640500307640ustar00rootroot00000000000000bad = _123 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/integer-underscore-double.toml000066400000000000000000000000141413547640500307750ustar00rootroot00000000000000bad = 1__23 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-after-array.toml000066400000000000000000000000401413547640500267230ustar00rootroot00000000000000[[agencies]] owner = "S Cjelli" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-after-table.toml000066400000000000000000000000441413547640500267000ustar00rootroot00000000000000[error] this = "should not be here" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-bare-1.toml000066400000000000000000000000171413547640500255610ustar00rootroot00000000000000bare!key = 123 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-bare-2.toml000066400000000000000000000000211413547640500255550ustar00rootroot00000000000000barekey = 123 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-bare-3.toml000066400000000000000000000000121413547640500255560ustar00rootroot00000000000000barekey = tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-dotted-redefine-table.toml000066400000000000000000000001141413547640500306370ustar00rootroot00000000000000# Defined a.b as int a.b = 1 # Tries to access it as table: error a.b.c = 2 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-duplicate.toml000066400000000000000000000000571413547640500264700ustar00rootroot00000000000000# DO NOT DO THIS name = "Tom" name = "Pradyun" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-empty.toml000066400000000000000000000000051413547640500256450ustar00rootroot00000000000000 = 1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-escape.toml000066400000000000000000000000551413547640500257540ustar00rootroot00000000000000\u00c0 = "latin capital letter A with grave" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-hash.toml000066400000000000000000000000071413547640500254340ustar00rootroot00000000000000a# = 1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-multiline.toml000066400000000000000000000000231413547640500265110ustar00rootroot00000000000000"""long key""" = 1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-newline.toml000066400000000000000000000000061413547640500261510ustar00rootroot00000000000000a = 1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-no-eol.toml000066400000000000000000000000141413547640500257000ustar00rootroot00000000000000a = 1 b = 2 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-open-bracket.toml000066400000000000000000000000111413547640500270560ustar00rootroot00000000000000[abc = 1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-partial-quoted.toml000066400000000000000000000000241413547640500274430ustar00rootroot00000000000000partial"quoted" = 5 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-single-open-bracket.toml000066400000000000000000000000021413547640500303350ustar00rootroot00000000000000[ tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-space.toml000066400000000000000000000000101413547640500255760ustar00rootroot00000000000000a b = 1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-special-character.toml000066400000000000000000000000351413547640500300640ustar00rootroot00000000000000μ = "greek small letter mu" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-start-bracket.toml000066400000000000000000000000211413547640500272530ustar00rootroot00000000000000[a] [xyz = 5 [b] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-two-equals.toml000066400000000000000000000000111413547640500266050ustar00rootroot00000000000000key= = 1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-two-equals2.toml000066400000000000000000000000051413547640500266720ustar00rootroot00000000000000a==1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-two-equals3.toml000066400000000000000000000000061413547640500266740ustar00rootroot00000000000000a=b=1 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/key-without-value.toml000066400000000000000000000000201413547640500273210ustar00rootroot00000000000000key = # INVALID tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/llbrace.toml000066400000000000000000000000131413547640500253240ustar00rootroot00000000000000[ [table]] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/multi-line-inline-table.toml000066400000000000000000000001131413547640500303410ustar00rootroot00000000000000json_like = { first = "Tom", last = "Preston-Werner" } tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/multi-line-string-no-close.toml000066400000000000000000000000411413547640500310210ustar00rootroot00000000000000invalid = """ this will fail tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/rrbrace.toml000066400000000000000000000000131413547640500253400ustar00rootroot00000000000000[[table] ] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-bad-byte-escape.toml000066400000000000000000000000211413547640500301500ustar00rootroot00000000000000naughty = "\xAg" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-bad-codepoint.toml000066400000000000000000000001211413547640500277340ustar00rootroot00000000000000invalid-codepoint = "This string contains a non scalar unicode codepoint \uD801" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-bad-concat.toml000066400000000000000000000000351413547640500272230ustar00rootroot00000000000000no_concat = "first" "second" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-bad-escape.toml000066400000000000000000000000761413547640500272210ustar00rootroot00000000000000invalid-escape = "This string has a bad \a escape character." tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-bad-multiline.toml000066400000000000000000000000411413547640500277530ustar00rootroot00000000000000multi = "first line second line" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-bad-slash-escape.toml000066400000000000000000000000761413547640500303310ustar00rootroot00000000000000invalid-escape = "This string has a bad \/ escape character." tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-bad-uni-esc.toml000066400000000000000000000000171413547640500273170ustar00rootroot00000000000000str = "val\ue" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-control-1.toml000066400000000000000000000000141413547640500301220ustar00rootroot00000000000000a = "null" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-control-2.toml000066400000000000000000000000141413547640500301230ustar00rootroot00000000000000a = "null" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-control-3.toml000066400000000000000000000000141413547640500301240ustar00rootroot00000000000000a = "null" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-control-4.toml000066400000000000000000000000141413547640500301250ustar00rootroot00000000000000a = "null" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-multiline-control-1.toml000066400000000000000000000000201413547640500321170ustar00rootroot00000000000000a = """null""" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-multiline-control-2.toml000066400000000000000000000000201413547640500321200ustar00rootroot00000000000000a = """null""" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-multiline-control-3.toml000066400000000000000000000000201413547640500321210ustar00rootroot00000000000000a = """null""" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-multiline-control-4.toml000066400000000000000000000000201413547640500321220ustar00rootroot00000000000000a = """null""" string-basic-multiline-out-of-range-unicode-escape-1.toml000066400000000000000000000000251413547640500355520ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/burntsushi-repoa = """\UFFFFFFFF""" string-basic-multiline-out-of-range-unicode-escape-2.toml000066400000000000000000000000251413547640500355530ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/burntsushi-repoa = """\U00D80000""" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-multiline-unknown-escape.toml000066400000000000000000000000151413547640500332420ustar00rootroot00000000000000a = """\@""" string-basic-out-of-range-unicode-escape-1.toml000066400000000000000000000000211413547640500335460ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/burntsushi-repoa = "\UFFFFFFFF" string-basic-out-of-range-unicode-escape-2.toml000066400000000000000000000000211413547640500335470ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/burntsushi-repoa = "\U00D80000" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-basic-unknown-escape.toml000066400000000000000000000000111413547640500312360ustar00rootroot00000000000000a = "\@" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-byte-escapes.toml000066400000000000000000000000201413547640500276060ustar00rootroot00000000000000answer = "\x33" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-control-character.toml000066400000000000000000000000241413547640500306400ustar00rootroot00000000000000name = "backspace" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-literal-control-1.toml000066400000000000000000000000141413547640500304750ustar00rootroot00000000000000a = 'null' tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-literal-control-2.toml000066400000000000000000000000141413547640500304760ustar00rootroot00000000000000a = 'null' tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-literal-control-3.toml000066400000000000000000000000141413547640500304770ustar00rootroot00000000000000a = 'null' tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-literal-control-4.toml000066400000000000000000000000141413547640500305000ustar00rootroot00000000000000a = 'null' tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-literal-multiline-control-1.toml000066400000000000000000000000201413547640500324720ustar00rootroot00000000000000a = '''null''' tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-literal-multiline-control-2.toml000066400000000000000000000000201413547640500324730ustar00rootroot00000000000000a = '''null''' tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-literal-multiline-control-3.toml000066400000000000000000000000201413547640500324740ustar00rootroot00000000000000a = '''null''' tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-literal-multiline-control-4.toml000066400000000000000000000000201413547640500324750ustar00rootroot00000000000000a = '''null''' tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-missing-quotes.toml000066400000000000000000000000151413547640500302150ustar00rootroot00000000000000name = value tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-no-close.toml000066400000000000000000000000521413547640500267460ustar00rootroot00000000000000no-ending-quote = "One time, at band camp tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/string-wrong-close.toml000066400000000000000000000000471413547640500274720ustar00rootroot00000000000000bad-ending-quote = "double and single' tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-array-implicit.toml000066400000000000000000000011561413547640500277440ustar00rootroot00000000000000# This test is a bit tricky. It should fail because the first use of # `[[albums.songs]]` without first declaring `albums` implies that `albums` # must be a table. The alternative would be quite weird. Namely, it wouldn't # comply with the TOML spec: "Each double-bracketed sub-table will belong to # the most *recently* defined table element *above* it." # # This is in contrast to the *valid* test, table-array-implicit where # `[[albums.songs]]` works by itself, so long as `[[albums]]` isn't declared # later. (Although, `[albums]` could be.) [[albums.songs]] name = "Glory Days" [[albums]] name = "Born in the USA" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-array-malformed-bracket.toml000066400000000000000000000000371413547640500315060ustar00rootroot00000000000000[[albums] name = "Born to Run" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-array-malformed-empty.toml000066400000000000000000000000321413547640500312240ustar00rootroot00000000000000[[]] name = "Born to Run" tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-duplicate.toml000066400000000000000000000000251413547640500267620ustar00rootroot00000000000000[a] b = 1 [a] c = 2 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-empty.toml000066400000000000000000000000031413547640500261420ustar00rootroot00000000000000[] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-equals-sign.toml000066400000000000000000000000131413547640500272350ustar00rootroot00000000000000[name=bad] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-nested-brackets-close.toml000066400000000000000000000000171413547640500311720ustar00rootroot00000000000000[a]b] zyx = 42 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-nested-brackets-open.toml000066400000000000000000000000171413547640500310260ustar00rootroot00000000000000[a[b] zyx = 42 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-quoted-no-close.toml000066400000000000000000000000421413547640500300250ustar00rootroot00000000000000["where will it end] name = value tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-redefine.toml000066400000000000000000000001161413547640500265720ustar00rootroot00000000000000# Define b as int, and try to use it as a table: error [a] b = 1 [a.b] c = 2 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-whitespace.toml000066400000000000000000000000161413547640500271440ustar00rootroot00000000000000[invalid key] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/table-with-pound.toml000066400000000000000000000000301413547640500271020ustar00rootroot00000000000000[key#group] answer = 42 tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/text-after-array-entries.toml000066400000000000000000000001061413547640500305710ustar00rootroot00000000000000array = [ "Is there life after an array separator?", No "Entry" ] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/text-after-integer.toml000066400000000000000000000000411413547640500274370ustar00rootroot00000000000000answer = 42 the ultimate answer? tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/text-after-string.toml000066400000000000000000000000541413547640500273140ustar00rootroot00000000000000string = "Is there life after strings?" No. tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/text-after-table.toml000066400000000000000000000000371413547640500270760ustar00rootroot00000000000000[error] this shouldn't be here tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/text-before-array-separator.toml000066400000000000000000000001071413547640500312620ustar00rootroot00000000000000array = [ "Is there life before an array separator?" No, "Entry" ] tomli-1.2.2/tests/data/extras/invalid/burntsushi-repo/text-in-array.toml000066400000000000000000000000701413547640500264270ustar00rootroot00000000000000array = [ "Entry 1", I don't belong, "Entry 2", ] tomli-1.2.2/tests/data/extras/invalid/dates-and-times/000077500000000000000000000000001413547640500226375ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/dates-and-times/invalid-day.toml000066400000000000000000000000561413547640500257360ustar00rootroot00000000000000"only 28 or 29 days in february" = 1988-02-30 tomli-1.2.2/tests/data/extras/invalid/inline-table-missing-comma.toml000066400000000000000000000000631413547640500256600ustar00rootroot00000000000000arrr = { comma-missing = true valid-toml = false } tomli-1.2.2/tests/data/extras/invalid/inline-table/000077500000000000000000000000001413547640500222235ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/inline-table/define-twice-in-subtable.toml000066400000000000000000000000551413547640500276660ustar00rootroot00000000000000table1 = { table2.dupe = 1, table2.dupe = 2 }tomli-1.2.2/tests/data/extras/invalid/inline-table/define-twice.toml000066400000000000000000000000361413547640500254620ustar00rootroot00000000000000table = { dupe = 1, dupe = 2 }tomli-1.2.2/tests/data/extras/invalid/inline-table/file-end-after-key-val.toml000066400000000000000000000000061413547640500272440ustar00rootroot00000000000000a={b=1tomli-1.2.2/tests/data/extras/invalid/inline-table/override-val-in-table.toml000066400000000000000000000001061413547640500272050ustar00rootroot00000000000000[tab.nested] inline-t = { nest = {} } [tab] nested.inline-t.nest = 2 tomli-1.2.2/tests/data/extras/invalid/inline-table/override-val-with-array.toml000066400000000000000000000000541413547640500276030ustar00rootroot00000000000000inline-t = { nest = {} } [[inline-t.nest]] tomli-1.2.2/tests/data/extras/invalid/inline-table/override-val-with-table.toml000066400000000000000000000000521413547640500275520ustar00rootroot00000000000000inline-t = { nest = {} } [inline-t.nest] tomli-1.2.2/tests/data/extras/invalid/inline-table/overwrite-implicitly.toml000066400000000000000000000000271413547640500273220ustar00rootroot00000000000000a = { b = 1, b.c = 2 } tomli-1.2.2/tests/data/extras/invalid/inline-table/overwrite-value-in-inner-array.toml000066400000000000000000000000651413547640500311120ustar00rootroot00000000000000tab = { inner.table = [{}], inner.table.val = "bad" }tomli-1.2.2/tests/data/extras/invalid/inline-table/overwrite-value-in-inner-table.toml000066400000000000000000000000671413547640500310650ustar00rootroot00000000000000tab = { inner = { dog = "best" }, inner.cat = "worst" }tomli-1.2.2/tests/data/extras/invalid/inline-table/unclosed-empty.toml000066400000000000000000000000031413547640500260610ustar00rootroot00000000000000a={tomli-1.2.2/tests/data/extras/invalid/invalid-escaped-unicode.toml000066400000000000000000000000331413547640500252250ustar00rootroot00000000000000escaped-unicode = "\uabag" tomli-1.2.2/tests/data/extras/invalid/invalid-hex.toml000066400000000000000000000000221413547640500227570ustar00rootroot00000000000000hex = 0xgabba00f1 tomli-1.2.2/tests/data/extras/invalid/keys-and-vals/000077500000000000000000000000001413547640500223365ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/keys-and-vals/ends-early-table-def.toml000066400000000000000000000000121413547640500271100ustar00rootroot00000000000000[fwfw.wafwtomli-1.2.2/tests/data/extras/invalid/keys-and-vals/ends-early.toml000066400000000000000000000000051413547640500252710ustar00rootroot00000000000000fs.fwtomli-1.2.2/tests/data/extras/invalid/keys-and-vals/no-value.toml000066400000000000000000000000151413547640500247550ustar00rootroot00000000000000why-no-value=tomli-1.2.2/tests/data/extras/invalid/keys-and-vals/only-ws-after-dot.toml000066400000000000000000000000031413547640500265170ustar00rootroot00000000000000fs.tomli-1.2.2/tests/data/extras/invalid/keys-and-vals/overwrite-with-deep-table.toml000066400000000000000000000000161413547640500302270ustar00rootroot00000000000000a=1 [a.b.c.d] tomli-1.2.2/tests/data/extras/invalid/literal-str/000077500000000000000000000000001413547640500221225ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/literal-str/unclosed.toml000066400000000000000000000000161413547640500246300ustar00rootroot00000000000000unclosed='dwddtomli-1.2.2/tests/data/extras/invalid/missing-closing-double-square-bracket.toml000066400000000000000000000000421413547640500300350ustar00rootroot00000000000000[[closing-bracket.missing] blaa=2 tomli-1.2.2/tests/data/extras/invalid/missing-closing-square-bracket.toml000066400000000000000000000000421413547640500265650ustar00rootroot00000000000000[closing-bracket.missingö blaa=2 tomli-1.2.2/tests/data/extras/invalid/multiline-basic-str/000077500000000000000000000000001413547640500235475ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/multiline-basic-str/carriage-return.toml000066400000000000000000000001051413547640500275320ustar00rootroot00000000000000s="""cr is not an allowed line ending but we just tried to use it """tomli-1.2.2/tests/data/extras/invalid/multiline-basic-str/escape-only.toml000066400000000000000000000000161413547640500266600ustar00rootroot00000000000000bee = """\""" tomli-1.2.2/tests/data/extras/invalid/multiline-basic-str/file-ends-after-opening.toml000066400000000000000000000000051413547640500310410ustar00rootroot00000000000000a="""tomli-1.2.2/tests/data/extras/invalid/multiline-basic-str/last-line-escape.toml000066400000000000000000000000351413547640500275700ustar00rootroot00000000000000bee = """ hee \ gee \ """ tomli-1.2.2/tests/data/extras/invalid/multiline-basic-str/unclosed-ends-in-whitespace-escape.toml000066400000000000000000000000241413547640500331770ustar00rootroot00000000000000bee = """ hee gee\ tomli-1.2.2/tests/data/extras/invalid/multiline-literal-str/000077500000000000000000000000001413547640500241225ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/multiline-literal-str/file-ends-after-opening.toml000066400000000000000000000000051413547640500314140ustar00rootroot00000000000000a='''tomli-1.2.2/tests/data/extras/invalid/multiline-literal-str/unclosed.toml000066400000000000000000000000241413547640500266270ustar00rootroot00000000000000bee = ''' hee gee ''tomli-1.2.2/tests/data/extras/invalid/table/000077500000000000000000000000001413547640500207475ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/invalid/table/eof-after-opening.toml000066400000000000000000000000011413547640500251400ustar00rootroot00000000000000[tomli-1.2.2/tests/data/extras/invalid/table/redefine-1.toml000066400000000000000000000000311413547640500235550ustar00rootroot00000000000000[t1] t2.t3.v = 0 [t1.t2] tomli-1.2.2/tests/data/extras/invalid/table/redefine-2.toml000066400000000000000000000000341413547640500235610ustar00rootroot00000000000000[t1] t2.t3.v = 0 [t1.t2.t3] tomli-1.2.2/tests/data/extras/invalid/unclosed-multiline-string.toml000066400000000000000000000000501413547640500256700ustar00rootroot00000000000000not-closed= """ diibaa blibae ete eteta tomli-1.2.2/tests/data/extras/invalid/unclosed-string.toml000066400000000000000000000000341413547640500236720ustar00rootroot00000000000000"a-string".must-be = "closedtomli-1.2.2/tests/data/extras/valid/000077500000000000000000000000001413547640500173315ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/valid/apostrophes-in-literal-string.json000066400000000000000000000001441413547640500261340ustar00rootroot00000000000000{"this-str-has-apostrophes": {"type": "string", "value": "' there's one already\n'' two more\n''"}} tomli-1.2.2/tests/data/extras/valid/apostrophes-in-literal-string.toml000066400000000000000000000001041413547640500261320ustar00rootroot00000000000000this-str-has-apostrophes='''' there's one already '' two more ''''' tomli-1.2.2/tests/data/extras/valid/array/000077500000000000000000000000001413547640500204475ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/valid/array/array-subtables.json000066400000000000000000000003021413547640500244350ustar00rootroot00000000000000{"arr": {"type":"array","value": [ {"subtab": {"val": {"type":"integer","value":"1"} } }, {"subtab": {"val": {"type":"integer","value":"2"}}} ] } } tomli-1.2.2/tests/data/extras/valid/array/array-subtables.toml000066400000000000000000000000671413547640500244470ustar00rootroot00000000000000[[arr]] [arr.subtab] val=1 [[arr]] [arr.subtab] val=2 tomli-1.2.2/tests/data/extras/valid/array/open-parent-table.json000066400000000000000000000001641413547640500246600ustar00rootroot00000000000000{ "parent-table": { "arr": {"type":"array","value":[{}]}, "not-arr": {"type":"integer","value":"1"} } } tomli-1.2.2/tests/data/extras/valid/array/open-parent-table.toml000066400000000000000000000000601413547640500246550ustar00rootroot00000000000000[[parent-table.arr]] [parent-table] not-arr = 1 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/000077500000000000000000000000001413547640500225025ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-empty.json000066400000000000000000000004231413547640500256460ustar00rootroot00000000000000{ "thevoid": { "type": "array", "value": [ {"type": "array", "value": [ {"type": "array", "value": [ {"type": "array", "value": [ {"type": "array", "value": []} ]} ]} ]} ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-empty.toml000066400000000000000000000000251413547640500256460ustar00rootroot00000000000000thevoid = [[[[[]]]]] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-hetergeneous.json000066400000000000000000000010541413547640500272060ustar00rootroot00000000000000{ "mixed": {"type": "array", "value": [ {"type": "array", "value": [ { "type": "integer", "value": "1" }, { "type": "integer", "value": "2" } ]}, {"type": "array", "value": [ { "type": "string", "value": "a" }, { "type": "string", "value": "b" } ]}, {"type": "array", "value": [ { "type": "float", "value": "1.1" }, { "type": "float", "value": "2.1" } ]} ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-hetergeneous.toml000066400000000000000000000000511413547640500272040ustar00rootroot00000000000000mixed = [[1, 2], ["a", "b"], [1.1, 2.1]] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-nested-inline-table.json000066400000000000000000000001071413547640500303320ustar00rootroot00000000000000{ "a": {"type": "array", "value": [ { "b": {} } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-nested-inline-table.toml000066400000000000000000000000231413547640500303310ustar00rootroot00000000000000a = [ { b = {} } ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-nested.json000066400000000000000000000003771413547640500260020ustar00rootroot00000000000000{ "nest": {"type": "array", "value": [ {"type": "array", "value": [ { "type": "string", "value": "a" } ]}, {"type": "array", "value": [ { "type": "string", "value": "b" } ]} ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-nested.toml000066400000000000000000000000261413547640500257730ustar00rootroot00000000000000nest = [["a"], ["b"]] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-nospaces.json000066400000000000000000000003321413547640500263220ustar00rootroot00000000000000{ "ints": { "type": "array", "value": [ {"type": "integer", "value": "1"}, {"type": "integer", "value": "2"}, {"type": "integer", "value": "3"} ] } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-nospaces.toml000066400000000000000000000000171413547640500263240ustar00rootroot00000000000000ints = [1,2,3] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-string-quote-comma-2.json000066400000000000000000000001161413547640500304010ustar00rootroot00000000000000{"title": {"type": "array", "value": [{"type": "string", "value": " \", "}]}} tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-string-quote-comma-2.toml000066400000000000000000000000241413547640500304010ustar00rootroot00000000000000title = [ " \", ",] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-string-quote-comma.json000066400000000000000000000003151413547640500302430ustar00rootroot00000000000000{ "title": { "type": "array", "value": [ {"type": "string", "value": "Client: \"XXXX\", Job: XXXX"}, {"type": "string", "value": "Code: XXXX"} ] } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-string-quote-comma.toml000066400000000000000000000000701413547640500302430ustar00rootroot00000000000000title = [ "Client: \"XXXX\", Job: XXXX", "Code: XXXX" ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-string-with-comma.json000066400000000000000000000003111413547640500300550ustar00rootroot00000000000000{ "title": { "type": "array", "value": [ {"type": "string", "value": "Client: XXXX, Job: XXXX"}, {"type": "string", "value": "Code: XXXX"} ] } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-string-with-comma.toml000066400000000000000000000000641413547640500300640ustar00rootroot00000000000000title = [ "Client: XXXX, Job: XXXX", "Code: XXXX" ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-table-array-string-backslash.json000066400000000000000000000001661413547640500321540ustar00rootroot00000000000000{ "foo": {"type": "array", "value": [ { "bar": {"type": "string", "value": "\"{{baz}}\"" } } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array-table-array-string-backslash.toml000066400000000000000000000000371413547640500321530ustar00rootroot00000000000000foo = [ { bar="\"{{baz}}\""} ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array.json000066400000000000000000000021441413547640500245140ustar00rootroot00000000000000{ "comments": {"type": "array", "value": [ { "type": "integer", "value": "1" }, { "type": "integer", "value": "2" } ]}, "dates": {"type": "array", "value": [ { "type": "offset datetime", "value": "1987-07-05T17:45:00+00:00" }, { "type": "offset datetime", "value": "1979-05-27T07:32:00+00:00" }, { "type": "offset datetime", "value": "2006-06-01T11:00:00+00:00" } ]}, "floats": {"type": "array", "value": [ { "type": "float", "value": "1.1" }, { "type": "float", "value": "2.1" }, { "type": "float", "value": "3.1" } ]}, "ints": {"type": "array", "value": [ { "type": "integer", "value": "1" }, { "type": "integer", "value": "2" }, { "type": "integer", "value": "3" } ]}, "strings": {"type": "array", "value": [ { "type": "string", "value": "a" }, { "type": "string", "value": "b" }, { "type": "string", "value": "c" } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/array.toml000066400000000000000000000003131413547640500245120ustar00rootroot00000000000000ints = [1, 2, 3] floats = [1.1, 2.1, 3.1] strings = ["a", "b", "c"] dates = [ 1987-07-05T17:45:00Z, 1979-05-27T07:32:00Z, 2006-06-01T11:00:00Z, ] comments = [ 1, 2, #this is ok ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/arrays-hetergeneous.json000066400000000000000000000010461413547640500273720ustar00rootroot00000000000000{ "mixed": { "type": "array", "value": [ {"type": "array", "value": [ {"type": "integer", "value": "1"}, {"type": "integer", "value": "2"} ]}, {"type": "array", "value": [ {"type": "string", "value": "a"}, {"type": "string", "value": "b"} ]}, {"type": "array", "value": [ {"type": "float", "value": "1.1"}, {"type": "float", "value": "2.1"} ]} ] } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/arrays-hetergeneous.toml000066400000000000000000000000511413547640500273670ustar00rootroot00000000000000mixed = [[1, 2], ["a", "b"], [1.1, 2.1]] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/arrays-nested.json000066400000000000000000000004411413547640500261550ustar00rootroot00000000000000{ "nest": { "type": "array", "value": [ {"type": "array", "value": [ {"type": "string", "value": "a"} ]}, {"type": "array", "value": [ {"type": "string", "value": "b"} ]} ] } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/arrays-nested.toml000066400000000000000000000000261413547640500261560ustar00rootroot00000000000000nest = [["a"], ["b"]] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/arrays.json000066400000000000000000000021561413547640500247020ustar00rootroot00000000000000{ "ints": { "type": "array", "value": [ {"type": "integer", "value": "1"}, {"type": "integer", "value": "2"}, {"type": "integer", "value": "3"} ] }, "floats": { "type": "array", "value": [ {"type": "float", "value": "1.1"}, {"type": "float", "value": "2.1"}, {"type": "float", "value": "3.1"} ] }, "strings": { "type": "array", "value": [ {"type": "string", "value": "a"}, {"type": "string", "value": "b"}, {"type": "string", "value": "c"} ] }, "dates": { "type": "array", "value": [ {"type": "offset datetime", "value": "1987-07-05T17:45:00+00:00"}, {"type": "offset datetime", "value": "1979-05-27T07:32:00+00:00"}, {"type": "offset datetime", "value": "2006-06-01T11:00:00+00:00"} ] }, "comments": { "type": "array", "value": [ {"type": "integer", "value": "1"}, {"type": "integer", "value": "2"} ] } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/arrays.toml000066400000000000000000000003131413547640500246750ustar00rootroot00000000000000ints = [1, 2, 3] floats = [1.1, 2.1, 3.1] strings = ["a", "b", "c"] dates = [ 1987-07-05T17:45:00Z, 1979-05-27T07:32:00Z, 2006-06-01T11:00:00Z, ] comments = [ 1, 2, #this is ok ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/bool.json000066400000000000000000000001421413547640500243250ustar00rootroot00000000000000{ "f": {"type": "boolean", "value": "false"}, "t": {"type": "boolean", "value": "true"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/bool.toml000066400000000000000000000000231413547640500243250ustar00rootroot00000000000000t = true f = false tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comment-at-eof.json000066400000000000000000000000761413547640500262130ustar00rootroot00000000000000{ "key": { "type": "string", "value": "value" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comment-at-eof.toml000066400000000000000000000001251413547640500262100ustar00rootroot00000000000000# This is a full-line comment key = "value" # This is a comment at the end of a line tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comment-at-eof2.json000066400000000000000000000000761413547640500262750ustar00rootroot00000000000000{ "key": { "type": "string", "value": "value" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comment-at-eof2.toml000066400000000000000000000001251413547640500262720ustar00rootroot00000000000000# This is a full-line comment key = "value" # This is a comment at the end of a line tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comment-everywhere.json000066400000000000000000000004141413547640500272210ustar00rootroot00000000000000{ "group": { "answer": { "type": "integer", "value": "42" }, "more": {"type": "array", "value": [ { "type": "integer", "value": "42" }, { "type": "integer", "value": "42" } ]} } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comment-everywhere.toml000066400000000000000000000007101413547640500272220ustar00rootroot00000000000000# Top comment. # Top comment. # Top comment. # [no-extraneous-groups-please] [group] # Comment answer = 42 # Comment # no-extraneous-keys-please = 999 # Inbetween comment. more = [ # Comment # What about multiple # comments? # Can you handle it? # # Evil. # Evil. 42, 42, # Comments within arrays are fun. # What about multiple # comments? # Can you handle it? # # Evil. # Evil. # ] Did I fool you? ] # Hopefully not. tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comment-tricky.json000066400000000000000000000032751413547640500263510ustar00rootroot00000000000000{ "hash#tag": { "#!": { "type": "string", "value": "hash bang" }, "arr3": {"type": "array", "value": [ { "type": "string", "value": "#" }, { "type": "string", "value": "#" }, { "type": "string", "value": "###" } ]}, "arr4": {"type": "array", "value": [ { "type": "integer", "value": "1" }, { "type": "integer", "value": "2" }, { "type": "integer", "value": "3" }, { "type": "integer", "value": "4" } ]}, "arr5": {"type": "array", "value": [ {"type": "array", "value": [ {"type": "array", "value": [ {"type": "array", "value": [ {"type": "array", "value": [ { "type": "string", "value": "#" } ]} ]} ]} ]} ]}, "tbl1": { "#": { "type": "string", "value": "}#" } } }, "section": { "8": { "type": "string", "value": "eight" }, "eleven": { "type": "float", "value": "11.1" }, "five": { "type": "float", "value": "5.5" }, "four": { "type": "string", "value": "# no comment\n# nor this\n#also not comment" }, "one": { "type": "string", "value": "11" }, "six": { "type": "integer", "value": "6" }, "ten": { "type": "float", "value": "1000.0" }, "three": { "type": "string", "value": "#" }, "two": { "type": "string", "value": "22#" } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comment-tricky.toml000066400000000000000000000006011413547640500263410ustar00rootroot00000000000000[section]#attached comment #[notsection] one = "11"#cmt two = "22#" three = '#' four = """# no comment # nor this #also not comment"""#is_comment five = 5.5#66 six = 6#7 8 = "eight" #nine = 99 ten = 10e2#1 eleven = 1.11e1#23 ["hash#tag"] "#!" = "hash bang" arr3 = [ "#", '#', """###""" ] arr4 = [ 1,# 9, 9, 2#,9 ,#9 3#] ,4] arr5 = [[[[#["#"], ["#"]]]]#] ] tbl1 = { "#" = '}#'}#}} tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comments-at-eof.json000066400000000000000000000000641413547640500263730ustar00rootroot00000000000000{ "key": {"type": "string", "value": "value"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comments-at-eof.toml000066400000000000000000000001251413547640500263730ustar00rootroot00000000000000# This is a full-line comment key = "value" # This is a comment at the end of a line tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comments-at-eof2.json000066400000000000000000000000641413547640500264550ustar00rootroot00000000000000{ "key": {"type": "string", "value": "value"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comments-at-eof2.toml000066400000000000000000000001241413547640500264540ustar00rootroot00000000000000# This is a full-line comment key = "value" # This is a comment at the end of a linetomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comments-everywhere.json000066400000000000000000000004241413547640500274050ustar00rootroot00000000000000{ "group": { "answer": {"type": "integer", "value": "42"}, "more": { "type": "array", "value": [ {"type": "integer", "value": "42"}, {"type": "integer", "value": "42"} ] } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/comments-everywhere.toml000066400000000000000000000007101413547640500274050ustar00rootroot00000000000000# Top comment. # Top comment. # Top comment. # [no-extraneous-groups-please] [group] # Comment answer = 42 # Comment # no-extraneous-keys-please = 999 # Inbetween comment. more = [ # Comment # What about multiple # comments? # Can you handle it? # # Evil. # Evil. 42, 42, # Comments within arrays are fun. # What about multiple # comments? # Can you handle it? # # Evil. # Evil. # ] Did I fool you? ] # Hopefully not. tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime-local-date.json000066400000000000000000000001171413547640500271730ustar00rootroot00000000000000{ "bestdayever": { "type": "local date", "value": "1987-07-05" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime-local-date.toml000066400000000000000000000000311413547640500271700ustar00rootroot00000000000000bestdayever = 1987-07-05 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime-local-time.json000066400000000000000000000002401413547640500272110ustar00rootroot00000000000000{ "besttimeever": { "type": "local time", "value": "17:45:00" }, "milliseconds": { "type": "local time", "value": "10:32:00.555000" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime-local-time.toml000066400000000000000000000000651413547640500272200ustar00rootroot00000000000000besttimeever = 17:45:00 milliseconds = 10:32:00.555 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime-local.json000066400000000000000000000004361413547640500262640ustar00rootroot00000000000000{ "bestdayever": { "type": "local datetime", "value": "1987-07-05T17:45:00" }, "bestdayever_with_space": { "type": "local datetime", "value": "1987-07-05T17:45:00" }, "milliseconds": { "type": "local datetime", "value": "1977-12-21T10:32:00.555" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime-local.toml000066400000000000000000000001661413547640500262660ustar00rootroot00000000000000bestdayever = 1987-07-05T17:45:00 milliseconds = 1977-12-21T10:32:00.555 bestdayever_with_space = 1987-07-05 17:45:00 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime-timezone.json000066400000000000000000000001311413547640500270140ustar00rootroot00000000000000{ "bestdayever": {"type": "offset datetime", "value": "2017-06-06T12:34:56-05:00"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime-timezone.toml000066400000000000000000000000501413547640500270160ustar00rootroot00000000000000bestdayever = 2017-06-06T12:34:56-05:00 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime.json000066400000000000000000000006001413547640500251650ustar00rootroot00000000000000{ "bestdayever": {"type": "offset datetime", "value": "1987-07-05T17:45:00Z"}, "numoffset": {"type": "offset datetime", "value": "1977-06-28T07:32:00-05:00"}, "milliseconds": {"type": "offset datetime", "value": "1977-12-21T10:32:00.555+07:00"}, "bestdayever_with_space": {"type": "offset datetime", "value": "1987-07-05T17:45:00+00:00"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/datetime.toml000066400000000000000000000002441413547640500251730ustar00rootroot00000000000000bestdayever = 1987-07-05T17:45:00Z numoffset = 1977-06-28T07:32:00-05:00 milliseconds = 1977-12-21T10:32:00.555+07:00 bestdayever_with_space = 1987-07-05 17:45:00Z tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/double-quote-escape.json000066400000000000000000000001021413547640500272310ustar00rootroot00000000000000{ "test": { "type": "string", "value": "\"one\"" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/double-quote-escape.toml000066400000000000000000000000211413547640500272330ustar00rootroot00000000000000test = "\"one\"" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/empty-file.json000066400000000000000000000000031413547640500254410ustar00rootroot00000000000000{} tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/empty-file.toml000066400000000000000000000000001413547640500254400ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/empty.json000066400000000000000000000000031413547640500245240ustar00rootroot00000000000000{} tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/empty.toml000066400000000000000000000000001413547640500245230ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/escaped-escape.json000066400000000000000000000000671413547640500262420ustar00rootroot00000000000000{ "answer": {"type": "string", "value": "\\x64"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/escaped-escape.toml000066400000000000000000000000211413547640500262320ustar00rootroot00000000000000answer = "\\x64" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/example.json000066400000000000000000000005541413547640500250340ustar00rootroot00000000000000{ "best-day-ever": {"type": "offset datetime", "value": "1987-07-05T17:45:00Z"}, "numtheory": { "boring": {"type": "boolean", "value": "false"}, "perfection": { "type": "array", "value": [ {"type": "integer", "value": "6"}, {"type": "integer", "value": "28"}, {"type": "integer", "value": "496"} ] } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/example.toml000066400000000000000000000001331413547640500250270ustar00rootroot00000000000000best-day-ever = 1987-07-05T17:45:00Z [numtheory] boring = false perfection = [6, 28, 496] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/exponent-part-float.json000066400000000000000000000002401413547640500273000ustar00rootroot00000000000000{ "million": {"type": "float", "value": "1000000"}, "minustenth": {"type": "float", "value": "-0.1"}, "beast": {"type": "float", "value": "666"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/exponent-part-float.toml000066400000000000000000000000601413547640500273020ustar00rootroot00000000000000million = 1e6 minustenth = -1E-1 beast = 6.66E2 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float-exponent.json000066400000000000000000000006311413547640500263400ustar00rootroot00000000000000{ "lower": {"type": "float", "value": "300.0"}, "minustenth": {"type": "float", "value": "-0.1"}, "upper": {"type": "float", "value": "300.0"}, "neg": {"type": "float", "value": "0.03"}, "pos": {"type": "float", "value": "300.0"}, "zero": {"type": "float", "value": "3.0"}, "pointlower": {"type": "float", "value": "310.0"}, "pointupper": {"type": "float", "value": "310.0"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float-exponent.toml000066400000000000000000000001621413547640500263410ustar00rootroot00000000000000lower = 3e2 upper = 3E2 neg = 3e-2 pos = 3E+2 zero = 3e0 pointlower = 3.1e2 pointupper = 3.1E2 minustenth = -1E-1 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float-inf-and-nan.json000066400000000000000000000005661413547640500265750ustar00rootroot00000000000000{ "infinity": { "type": "float", "value": "inf" }, "infinity_neg": { "type": "float", "value": "-inf" }, "infinity_plus": { "type": "float", "value": "+inf" }, "nan": { "type": "float", "value": "nan" }, "nan_neg": { "type": "float", "value": "nan" }, "nan_plus": { "type": "float", "value": "nan" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float-inf-and-nan.toml000066400000000000000000000003501413547640500265660ustar00rootroot00000000000000# We don't encode +nan and -nan back with the signs; many languages don't # support a sign on NaN (it doesn't really make much sense). nan = nan nan_neg = -nan nan_plus = +nan infinity = inf infinity_neg = -inf infinity_plus = +inf tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float-long.json000066400000000000000000000002311413547640500254330ustar00rootroot00000000000000{ "longpi": { "type": "float", "value": "3.141592653589793" }, "neglongpi": { "type": "float", "value": "-3.141592653589793" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float-long.toml000066400000000000000000000000721413547640500254400ustar00rootroot00000000000000longpi = 3.141592653589793 neglongpi = -3.141592653589793 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float-underscore.json000066400000000000000000000002441413547640500266510ustar00rootroot00000000000000{ "before": {"type": "float", "value": "3141.5927"}, "after": {"type": "float", "value": "3141.5927"}, "exponent": {"type": "float", "value": "3e14"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float-underscore.toml000066400000000000000000000000701413547640500266500ustar00rootroot00000000000000before = 3_141.5927 after = 3141.592_7 exponent = 3e1_4 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float.json000066400000000000000000000003151413547640500245010ustar00rootroot00000000000000{ "pi": {"type": "float", "value": "3.14"}, "pospi": {"type": "float", "value": "3.14"}, "negpi": {"type": "float", "value": "-3.14"}, "zero-intpart": {"type": "float", "value": "0.123"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/float.toml000066400000000000000000000000731413547640500245040ustar00rootroot00000000000000pi = 3.14 pospi = +3.14 negpi = -3.14 zero-intpart = 0.123 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/implicit-and-explicit-after.json000066400000000000000000000003021413547640500306600ustar00rootroot00000000000000{ "a": { "better": {"type": "integer", "value": "43"}, "b": { "c": { "answer": {"type": "integer", "value": "42"} } } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/implicit-and-explicit-after.toml000066400000000000000000000000451413547640500306660ustar00rootroot00000000000000[a.b.c] answer = 42 [a] better = 43 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/implicit-and-explicit-before.json000066400000000000000000000003021413547640500310210ustar00rootroot00000000000000{ "a": { "better": {"type": "integer", "value": "43"}, "b": { "c": { "answer": {"type": "integer", "value": "42"} } } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/implicit-and-explicit-before.toml000066400000000000000000000000451413547640500310270ustar00rootroot00000000000000[a] better = 43 [a.b.c] answer = 42 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/implicit-groups.json000066400000000000000000000002141413547640500265210ustar00rootroot00000000000000{ "a": { "b": { "c": { "answer": {"type": "integer", "value": "42"} } } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/implicit-groups.toml000066400000000000000000000000241413547640500265220ustar00rootroot00000000000000[a.b.c] answer = 42 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-array.json000066400000000000000000000007631413547640500270620ustar00rootroot00000000000000{ "people": {"type": "array", "value": [ { "first_name": {"type": "string", "value": "Bruce"}, "last_name": {"type": "string", "value": "Springsteen"} }, { "first_name": {"type": "string", "value": "Eric"}, "last_name": {"type": "string", "value": "Clapton"} }, { "first_name": {"type": "string", "value": "Bob"}, "last_name": {"type": "string", "value": "Seger"} } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-array.toml000066400000000000000000000002521413547640500270550ustar00rootroot00000000000000people = [{first_name = "Bruce", last_name = "Springsteen"}, {first_name = "Eric", last_name = "Clapton"}, {first_name = "Bob", last_name = "Seger"}] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-empty.json000066400000000000000000000007071413547640500271000ustar00rootroot00000000000000{ "empty1": {}, "empty2": {}, "empty_in_array": {"type": "array", "value": [ { "not_empty": { "type": "integer", "value": "1" } }, {} ]}, "empty_in_array2": {"type": "array", "value": [ {}, { "not_empty": { "type": "integer", "value": "1" } } ]}, "many_empty": {"type": "array", "value": [ {}, {}, {} ]}, "nested_empty": { "empty": {} } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-empty.toml000066400000000000000000000002351413547640500270760ustar00rootroot00000000000000empty1 = {} empty2 = { } empty_in_array = [ { not_empty = 1 }, {} ] empty_in_array2 = [{},{not_empty=1}] many_empty = [{},{},{}] nested_empty = {"empty"={}} tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-end-in-bool.json000066400000000000000000000003761413547640500300470ustar00rootroot00000000000000{ "black": { "allow_prereleases": { "type": "boolean", "value": "true" }, "python": { "type": "string", "value": "\u003e3.6" }, "version": { "type": "string", "value": "\u003e=18.9b0" } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-end-in-bool.toml000066400000000000000000000001061413547640500300400ustar00rootroot00000000000000black = { python=">3.6", version=">=18.9b0", allow_prereleases=true } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-multiline.json000066400000000000000000000004601413547640500277400ustar00rootroot00000000000000{ "tbl_multiline": { "a": { "type": "integer", "value": "1" }, "b": { "type": "string", "value": "multiline\n" }, "c": { "type": "string", "value": "and yet\nanother line" }, "d": { "type": "integer", "value": "4" } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-multiline.toml000066400000000000000000000001301413547640500277340ustar00rootroot00000000000000tbl_multiline = { a = 1, b = """ multiline """, c = """and yet another line""", d = 4 } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-nest.json000066400000000000000000000020671413547640500267140ustar00rootroot00000000000000{ "arr_arr_tbl_empty": {"type": "array", "value": [ {"type": "array", "value": [ {} ]} ]}, "arr_arr_tbl_val": {"type": "array", "value": [ {"type": "array", "value": [ { "one": { "type": "integer", "value": "1" } } ]} ]}, "arr_arr_tbls": {"type": "array", "value": [ {"type": "array", "value": [ { "one": { "type": "integer", "value": "1" } }, { "two": { "type": "integer", "value": "2" } } ]} ]}, "arr_tbl_tbl": {"type": "array", "value": [ { "tbl": { "one": { "type": "integer", "value": "1" } } } ]}, "tbl_arr_tbl": { "arr_tbl": {"type": "array", "value": [ { "one": { "type": "integer", "value": "1" } } ]} }, "tbl_tbl_empty": { "tbl_0": {} }, "tbl_tbl_val": { "tbl_1": { "one": { "type": "integer", "value": "1" } } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table-nest.toml000066400000000000000000000005641413547640500267160ustar00rootroot00000000000000tbl_tbl_empty = { tbl_0 = {} } tbl_tbl_val = { tbl_1 = { one = 1 } } tbl_arr_tbl = { arr_tbl = [ { one = 1 } ] } arr_tbl_tbl = [ { tbl = { one = 1 } } ] # Array-of-array-of-table is interesting because it can only # be represented in inline form. arr_arr_tbl_empty = [ [ {} ] ] arr_arr_tbl_val = [ [ { one = 1 } ] ] arr_arr_tbls = [ [ { one = 1 }, { two = 2 } ] ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table.json000066400000000000000000000010241413547640500257350ustar00rootroot00000000000000{ "name": { "first": {"type": "string", "value": "Tom"}, "last": {"type": "string", "value": "Preston-Werner"} }, "point": { "x": {"type": "integer", "value": "1"}, "y": {"type": "integer", "value": "2"} }, "simple": { "a": {"type": "integer", "value": "1"} }, "str-key": { "a": {"type": "integer", "value": "1"} }, "table-array": {"type": "array", "value": [ { "a": {"type": "integer", "value": "1"} }, { "b": {"type": "integer", "value": "2"} } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/inline-table.toml000066400000000000000000000002351413547640500257420ustar00rootroot00000000000000name = { first = "Tom", last = "Preston-Werner" } point = { x = 1, y = 2 } simple = { a = 1 } str-key = { "a" = 1 } table-array = [{ "a" = 1 }, { "b" = 2 }] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/integer-literals.json000066400000000000000000000005751413547640500266560ustar00rootroot00000000000000{ "bin1": { "type": "integer", "value": "214" }, "hex1": { "type": "integer", "value": "3735928559" }, "hex2": { "type": "integer", "value": "3735928559" }, "hex3": { "type": "integer", "value": "3735928559" }, "oct1": { "type": "integer", "value": "342391" }, "oct2": { "type": "integer", "value": "493" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/integer-literals.toml000066400000000000000000000001501413547640500266450ustar00rootroot00000000000000bin1 = 0b11010110 oct1 = 0o01234567 oct2 = 0o755 hex1 = 0xDEADBEEF hex2 = 0xdeadbeef hex3 = 0xdead_beef tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/integer-long.json000066400000000000000000000002411413547640500257640ustar00rootroot00000000000000{ "answer": { "type": "integer", "value": "9223372036854775807" }, "neganswer": { "type": "integer", "value": "-9223372036854775808" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/integer-long.toml000066400000000000000000000000761413547640500257740ustar00rootroot00000000000000answer = 9223372036854775807 neganswer = -9223372036854775808 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/integer-underscore.json000066400000000000000000000000651413547640500272020ustar00rootroot00000000000000{ "kilo": {"type": "integer", "value": "1000"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/integer-underscore.toml000066400000000000000000000000151413547640500271770ustar00rootroot00000000000000kilo = 1_000 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/integer.json000066400000000000000000000003171413547640500250330ustar00rootroot00000000000000{ "answer": {"type": "integer", "value": "42"}, "neganswer": {"type": "integer", "value": "-42"}, "posanswer": {"type": "integer", "value": "42"}, "zero": {"type": "integer", "value": "0"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/integer.toml000066400000000000000000000000651413547640500250350ustar00rootroot00000000000000answer = 42 posanswer = +42 neganswer = -42 zero = 0 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-alphanum.json000066400000000000000000000012331413547640500257670ustar00rootroot00000000000000{ "000111": { "type": "string", "value": "leading" }, "10e3": { "type": "string", "value": "false float" }, "123": { "type": "string", "value": "num" }, "2018_10": { "001": { "type": "integer", "value": "1" } }, "34-11": { "type": "integer", "value": "23" }, "a-a-a": { "_": { "type": "boolean", "value": "false" } }, "alpha": { "type": "string", "value": "a" }, "one1two2": { "type": "string", "value": "mixed" }, "under_score": { "type": "string", "value": "___" }, "with-dash": { "type": "string", "value": "dashed" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-alphanum.toml000066400000000000000000000002551413547640500257740ustar00rootroot00000000000000alpha = "a" 123 = "num" 000111 = "leading" 10e3 = "false float" one1two2 = "mixed" with-dash = "dashed" under_score = "___" 34-11 = 23 [2018_10] 001 = 1 [a-a-a] _ = false tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-case-sensitive.json000066400000000000000000000011711413547640500271050ustar00rootroot00000000000000{ "Section": { "M": { "type": "string", "value": "latin letter M" }, "name": { "type": "string", "value": "different section!!" }, "Μ": { "type": "string", "value": "greek capital letter MU" }, "μ": { "type": "string", "value": "greek small letter mu" } }, "sectioN": { "type": "string", "value": "NN" }, "section": { "NAME": { "type": "string", "value": "upper" }, "Name": { "type": "string", "value": "capitalized" }, "name": { "type": "string", "value": "lower" } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-case-sensitive.toml000066400000000000000000000003131413547640500271040ustar00rootroot00000000000000sectioN = "NN" [section] name = "lower" NAME = "upper" Name = "capitalized" [Section] name = "different section!!" "μ" = "greek small letter mu" "Μ" = "greek capital letter MU" M = "latin letter M" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-dotted.json000066400000000000000000000007761413547640500254600ustar00rootroot00000000000000{ "l1": { "l2": { "l3": { "l4": { "l5": { "l6": { "type": "integer", "value": "42" } } } } } }, "name": { "first": { "type": "string", "value": "Tom" }, "last": { "type": "string", "value": "Preston-Werner" } }, "point": { "x": { "type": "integer", "value": "1" }, "y": { "type": "integer", "value": "2" } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-dotted.toml000066400000000000000000000001441413547640500254470ustar00rootroot00000000000000name.first = "Tom" name.last = "Preston-Werner" point.x = 1 point.y = 2 l1.l2.l3 = {l4.l5.l6 = 42} tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-empty.json000066400000000000000000000000731413547640500253210ustar00rootroot00000000000000{ "": { "type": "string", "value": "blank" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-empty.toml000066400000000000000000000000151413547640500253170ustar00rootroot00000000000000"" = "blank" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-equals-nospace.json000066400000000000000000000000651413547640500271040ustar00rootroot00000000000000{ "answer": {"type": "integer", "value": "42"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-equals-nospace.toml000066400000000000000000000000121413547640500270760ustar00rootroot00000000000000answer=42 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-escapes.json000066400000000000000000000005521413547640500256100ustar00rootroot00000000000000{ "\n": { "type": "string", "value": "newline" }, "\"": { "type": "string", "value": "just a quote" }, "\"quoted\"": { "quote": { "type": "boolean", "value": "true" } }, "a.b": { "À": {} }, "backsp\u0008\u0008": {}, "À": { "type": "string", "value": "latin capital letter A with grave" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-escapes.toml000066400000000000000000000002251413547640500256070ustar00rootroot00000000000000"\n" = "newline" "\u00c0" = "latin capital letter A with grave" "\"" = "just a quote" ["backsp\b\b"] ["\"quoted\""] quote = true ["a.b"."\u00c0"] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-numeric.json000066400000000000000000000000571413547640500256270ustar00rootroot00000000000000{ "1": {"type": "integer", "value": "1"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-numeric.toml000066400000000000000000000000061413547640500256230ustar00rootroot000000000000001 = 1 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-quoted-dots.json000066400000000000000000000007341413547640500264370ustar00rootroot00000000000000{ "plain": { "type": "integer", "value": "1" }, "plain_table": { "plain": { "type": "integer", "value": "3" }, "with.dot": { "type": "integer", "value": "4" } }, "table": { "withdot": { "key.with.dots": { "type": "integer", "value": "6" }, "plain": { "type": "integer", "value": "5" } } }, "with.dot": { "type": "integer", "value": "2" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-quoted-dots.toml000066400000000000000000000001601413547640500264320ustar00rootroot00000000000000plain = 1 "with.dot" = 2 [plain_table] plain = 3 "with.dot" = 4 [table.withdot] plain = 5 "key.with.dots" = 6 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-space.json000066400000000000000000000000611413547640500252530ustar00rootroot00000000000000{ "a b": {"type": "integer", "value": "1"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-space.toml000066400000000000000000000000121413547640500252510ustar00rootroot00000000000000"a b" = 1 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-special-chars.json000066400000000000000000000001371413547640500267020ustar00rootroot00000000000000{ "~!@$^&*()_+-`1234567890[]|/?><.,;:'": { "type": "integer", "value": "1" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-special-chars.toml000066400000000000000000000000521413547640500267000ustar00rootroot00000000000000"~!@$^&*()_+-`1234567890[]|/?><.,;:'" = 1 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-special-word.json000066400000000000000000000004101413547640500265470ustar00rootroot00000000000000{ "false": { "type": "boolean", "value": "false" }, "inf": { "type": "integer", "value": "100000000" }, "nan": { "type": "string", "value": "ceci n'est pas un nombre" }, "true": { "type": "integer", "value": "1" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/key-special-word.toml000066400000000000000000000001111413547640500265470ustar00rootroot00000000000000false = false true = 1 inf = 100000000 nan = "ceci n'est pas un nombre" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/keys-with-dots.json000066400000000000000000000005571413547640500262770ustar00rootroot00000000000000{ "plain": {"type": "integer", "value": "1"}, "with.dot": {"type": "integer", "value": "2"}, "plain_table": { "plain": {"type": "integer", "value": "3"}, "with.dot": {"type": "integer", "value": "4"} }, "table": { "withdot": { "plain": {"type": "integer", "value": "5"}, "key.with.dots": {"type": "integer", "value": "6"} } } }tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/keys-with-dots.toml000066400000000000000000000001571413547640500262750ustar00rootroot00000000000000plain = 1 "with.dot" = 2 [plain_table] plain = 3 "with.dot" = 4 [table.withdot] plain = 5 "key.with.dots" = 6tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/long-float.json000066400000000000000000000002051413547640500254340ustar00rootroot00000000000000{ "longpi": {"type": "float", "value": "3.141592653589793"}, "neglongpi": {"type": "float", "value": "-3.141592653589793"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/long-float.toml000066400000000000000000000000721413547640500254400ustar00rootroot00000000000000longpi = 3.141592653589793 neglongpi = -3.141592653589793 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/long-integer.json000066400000000000000000000002151413547640500257650ustar00rootroot00000000000000{ "answer": {"type": "integer", "value": "9223372036854775807"}, "neganswer": {"type": "integer", "value": "-9223372036854775808"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/long-integer.toml000066400000000000000000000000761413547640500257740ustar00rootroot00000000000000answer = 9223372036854775807 neganswer = -9223372036854775808 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/multiline-string-accidental-whitespace.json000066400000000000000000000001551413547640500331230ustar00rootroot00000000000000{ "three_lines": { "type": "string", "value": "The quick brown fox jumps over the lazy dog." } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/multiline-string-accidental-whitespace.toml000066400000000000000000000001501413547640500331200ustar00rootroot00000000000000three_lines = """\ The quick brown \ fox jumps over \ the lazy dog.\ """ tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/multiline-string-quotes.json000066400000000000000000000013401413547640500302170ustar00rootroot00000000000000{ "lit_one": { "type": "string", "value": "'one quote'" }, "lit_one_space": { "type": "string", "value": " 'one quote' " }, "lit_two": { "type": "string", "value": "''two quotes''" }, "lit_two_space": { "type": "string", "value": " ''two quotes'' " }, "mismatch1": { "type": "string", "value": "aaa'''bbb" }, "mismatch2": { "type": "string", "value": "aaa\"\"\"bbb" }, "one": { "type": "string", "value": "\"one quote\"" }, "one_space": { "type": "string", "value": " \"one quote\" " }, "two": { "type": "string", "value": "\"\"two quotes\"\"" }, "two_space": { "type": "string", "value": " \"\"two quotes\"\" " } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/multiline-string-quotes.toml000066400000000000000000000004641413547640500302270ustar00rootroot00000000000000lit_one = ''''one quote'''' lit_one_space = ''' 'one quote' ''' lit_two = '''''two quotes''''' lit_two_space = ''' ''two quotes'' ''' mismatch1 = """aaa'''bbb""" mismatch2 = '''aaa"""bbb''' one = """"one quote"""" one_space = """ "one quote" """ two = """""two quotes""""" two_space = """ ""two quotes"" """ tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/multiline-string.json000066400000000000000000000012731413547640500267060ustar00rootroot00000000000000{ "multiline_empty_one": { "type": "string", "value": "" }, "multiline_empty_two": { "type": "string", "value": "" }, "multiline_empty_three": { "type": "string", "value": "" }, "multiline_empty_four": { "type": "string", "value": "" }, "equivalent_one": { "type": "string", "value": "The quick brown fox jumps over the lazy dog." }, "equivalent_two": { "type": "string", "value": "The quick brown fox jumps over the lazy dog." }, "equivalent_three": { "type": "string", "value": "The quick brown fox jumps over the lazy dog." } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/multiline-string.toml000066400000000000000000000006121413547640500267040ustar00rootroot00000000000000multiline_empty_one = """""" multiline_empty_two = """ """ multiline_empty_three = """\ """ multiline_empty_four = """\ \ \ """ equivalent_one = "The quick brown fox jumps over the lazy dog." equivalent_two = """ The quick brown \ fox jumps over \ the lazy dog.""" equivalent_three = """\ The quick brown \ fox jumps over \ the lazy dog.\ """ tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/nested-inline-table-array.json000066400000000000000000000001311413547640500303270ustar00rootroot00000000000000{ "a": {"type": "array", "value": [ { "b": {} } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/nested-inline-table-array.toml000066400000000000000000000000231413547640500303310ustar00rootroot00000000000000a = [ { b = {} } ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/newline-crlf.json000066400000000000000000000001451413547640500257620ustar00rootroot00000000000000{ "os": {"type": "string", "value": "DOS"}, "newline": {"type": "string", "value": "crlf"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/newline-crlf.toml000066400000000000000000000000361413547640500257630ustar00rootroot00000000000000os = "DOS" newline = "crlf" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/newline-lf.json000066400000000000000000000001441413547640500254340ustar00rootroot00000000000000{ "os": {"type": "string", "value": "unix"}, "newline": {"type": "string", "value": "lf"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/newline-lf.toml000066400000000000000000000000331413547640500254330ustar00rootroot00000000000000os = "unix" newline = "lf" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/raw-multiline-string.json000066400000000000000000000005471413547640500275000ustar00rootroot00000000000000{ "oneline": { "type": "string", "value": "This string has a ' quote character." }, "firstnl": { "type": "string", "value": "This string has a ' quote character." }, "multiline": { "type": "string", "value": "This string\nhas ' a quote character\nand more than\none newline\nin it." } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/raw-multiline-string.toml000066400000000000000000000003031413547640500274700ustar00rootroot00000000000000oneline = '''This string has a ' quote character.''' firstnl = ''' This string has a ' quote character.''' multiline = ''' This string has ' a quote character and more than one newline in it.''' tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/raw-string.json000066400000000000000000000014171413547640500254750ustar00rootroot00000000000000{ "backspace": { "type": "string", "value": "This string has a \\b backspace character." }, "tab": { "type": "string", "value": "This string has a \\t tab character." }, "newline": { "type": "string", "value": "This string has a \\n new line character." }, "formfeed": { "type": "string", "value": "This string has a \\f form feed character." }, "carriage": { "type": "string", "value": "This string has a \\r carriage return character." }, "slash": { "type": "string", "value": "This string has a \\/ slash character." }, "backslash": { "type": "string", "value": "This string has a \\\\ backslash character." } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/raw-string.toml000066400000000000000000000005651413547640500255020ustar00rootroot00000000000000backspace = 'This string has a \b backspace character.' tab = 'This string has a \t tab character.' newline = 'This string has a \n new line character.' formfeed = 'This string has a \f form feed character.' carriage = 'This string has a \r carriage return character.' slash = 'This string has a \/ slash character.' backslash = 'This string has a \\ backslash character.' tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/right-curly-brace-after-boolean.json000066400000000000000000000004301413547640500314310ustar00rootroot00000000000000{ "black":{ "allow_prereleases":{ "type":"boolean", "value":"true" }, "python":{ "type":"string", "value":">3.6" }, "version":{ "type":"string", "value":">=18.9b0" } } }tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/right-curly-brace-after-boolean.toml000066400000000000000000000001061413547640500314330ustar00rootroot00000000000000black = { python=">3.6", version=">=18.9b0", allow_prereleases=true } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/spec-example-1-compact.json000066400000000000000000000033411413547640500275430ustar00rootroot00000000000000{ "clients": { "data": {"type": "array", "value": [ {"type": "array", "value": [ { "type": "string", "value": "gamma" }, { "type": "string", "value": "delta" } ]}, {"type": "array", "value": [ { "type": "integer", "value": "1" }, { "type": "integer", "value": "2" } ]} ]}, "hosts": {"type": "array", "value": [ { "type": "string", "value": "alpha" }, { "type": "string", "value": "omega" } ]} }, "database": { "connection_max": { "type": "integer", "value": "5000" }, "enabled": { "type": "boolean", "value": "true" }, "ports": {"type": "array", "value": [ { "type": "integer", "value": "8001" }, { "type": "integer", "value": "8001" }, { "type": "integer", "value": "8002" } ]}, "server": { "type": "string", "value": "192.168.1.1" } }, "owner": { "dob": { "type": "offset datetime", "value": "1979-05-27T07:32:00-08:00" }, "name": { "type": "string", "value": "Lance Uppercut" } }, "servers": { "alpha": { "dc": { "type": "string", "value": "eqdc10" }, "ip": { "type": "string", "value": "10.0.0.1" } }, "beta": { "dc": { "type": "string", "value": "eqdc10" }, "ip": { "type": "string", "value": "10.0.0.2" } } }, "title": { "type": "string", "value": "TOML Example" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/spec-example-1-compact.toml000066400000000000000000000005701413547640500275460ustar00rootroot00000000000000#Useless spaces eliminated. title="TOML Example" [owner] name="Lance Uppercut" dob=1979-05-27T07:32:00-08:00#First class dates [database] server="192.168.1.1" ports=[8001,8001,8002] connection_max=5000 enabled=true [servers] [servers.alpha] ip="10.0.0.1" dc="eqdc10" [servers.beta] ip="10.0.0.2" dc="eqdc10" [clients] data=[["gamma","delta"],[1,2]] hosts=[ "alpha", "omega" ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/spec-example-1.json000066400000000000000000000033411413547640500261170ustar00rootroot00000000000000{ "clients": { "data": {"type": "array", "value": [ {"type": "array", "value": [ { "type": "string", "value": "gamma" }, { "type": "string", "value": "delta" } ]}, {"type": "array", "value": [ { "type": "integer", "value": "1" }, { "type": "integer", "value": "2" } ]} ]}, "hosts": {"type": "array", "value": [ { "type": "string", "value": "alpha" }, { "type": "string", "value": "omega" } ]} }, "database": { "connection_max": { "type": "integer", "value": "5000" }, "enabled": { "type": "boolean", "value": "true" }, "ports": {"type": "array", "value": [ { "type": "integer", "value": "8001" }, { "type": "integer", "value": "8001" }, { "type": "integer", "value": "8002" } ]}, "server": { "type": "string", "value": "192.168.1.1" } }, "owner": { "dob": { "type": "offset datetime", "value": "1979-05-27T07:32:00-08:00" }, "name": { "type": "string", "value": "Lance Uppercut" } }, "servers": { "alpha": { "dc": { "type": "string", "value": "eqdc10" }, "ip": { "type": "string", "value": "10.0.0.1" } }, "beta": { "dc": { "type": "string", "value": "eqdc10" }, "ip": { "type": "string", "value": "10.0.0.2" } } }, "title": { "type": "string", "value": "TOML Example" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/spec-example-1.toml000066400000000000000000000010571413547640500261230ustar00rootroot00000000000000# This is a TOML document. Boom. title = "TOML Example" [owner] name = "Lance Uppercut" dob = 1979-05-27T07:32:00-08:00 # First class dates? Why not? [database] server = "192.168.1.1" ports = [ 8001, 8001, 8002 ] connection_max = 5000 enabled = true [servers] # You can indent as you please. Tabs or spaces. TOML don't care. [servers.alpha] ip = "10.0.0.1" dc = "eqdc10" [servers.beta] ip = "10.0.0.2" dc = "eqdc10" [clients] data = [ ["gamma", "delta"], [1, 2] ] # Line breaks are OK when inside arrays hosts = [ "alpha", "omega" ] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-double-quote-escape.json000066400000000000000000000001011413547640500305340ustar00rootroot00000000000000{ "test": { "type": "string", "value": "\"one\"" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-double-quote-escape.toml000066400000000000000000000000211413547640500305370ustar00rootroot00000000000000test = "\"one\"" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-empty.json000066400000000000000000000001101413547640500260270ustar00rootroot00000000000000{ "answer": { "type": "string", "value": "" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-empty.toml000066400000000000000000000000141413547640500260340ustar00rootroot00000000000000answer = "" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-escape-tricky.json000066400000000000000000000011551413547640500274460ustar00rootroot00000000000000{ "end_esc": { "type": "string", "value": "String does not end here\" but ends here\\" }, "lit_end_esc": { "type": "string", "value": "String ends here\\" }, "lit_multiline_end": { "type": "string", "value": "There is no escape\\" }, "lit_multiline_not_unicode": { "type": "string", "value": "\\u007f" }, "multiline_end_esc": { "type": "string", "value": "When will it end? \"\"\"...\"\"\" should be here\"" }, "multiline_not_unicode": { "type": "string", "value": "\\u0041" }, "multiline_unicode": { "type": "string", "value": " " } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-escape-tricky.toml000066400000000000000000000005101413547640500274420ustar00rootroot00000000000000end_esc = "String does not end here\" but ends here\\" lit_end_esc = 'String ends here\' multiline_unicode = """ \u00a0""" multiline_not_unicode = """ \\u0041""" multiline_end_esc = """When will it end? \"""...""\" should be here\"""" lit_multiline_not_unicode = ''' \u007f''' lit_multiline_end = '''There is no escape\''' tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-escaped-escape.json000066400000000000000000000001011413547640500275330ustar00rootroot00000000000000{ "answer": { "type": "string", "value": "\\x64" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-escaped-escape.toml000066400000000000000000000000211413547640500275360ustar00rootroot00000000000000answer = "\\x64" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-escapes.json000066400000000000000000000027721413547640500263340ustar00rootroot00000000000000{ "backspace": { "type": "string", "value": "This string has a \u0008 backspace character." }, "tab": { "type": "string", "value": "This string has a \u0009 tab character." }, "newline": { "type": "string", "value": "This string has a \u000A new line character." }, "formfeed": { "type": "string", "value": "This string has a \u000C form feed character." }, "carriage": { "type": "string", "value": "This string has a \u000D carriage return character." }, "delete": {"type": "string", "value": "This string has a \u007F delete control code."}, "quote": { "type": "string", "value": "This string has a \u0022 quote character." }, "backslash": { "type": "string", "value": "This string has a \u005C backslash character." }, "notunicode1": { "type": "string", "value": "This string does not have a unicode \\u escape." }, "notunicode2": { "type": "string", "value": "This string does not have a unicode \u005Cu escape." }, "notunicode3": { "type": "string", "value": "This string does not have a unicode \\u0075 escape." }, "notunicode4": { "type": "string", "value": "This string does not have a unicode \\\u0075 escape." }, "unitseparator": {"type": "string", "value": "This string has a \u001F unit separator control code."} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-escapes.toml000066400000000000000000000014031413547640500263240ustar00rootroot00000000000000backspace = "This string has a \b backspace character." tab = "This string has a \t tab character." newline = "This string has a \n new line character." formfeed = "This string has a \f form feed character." carriage = "This string has a \r carriage return character." quote = "This string has a \" quote character." backslash = "This string has a \\ backslash character." notunicode1 = "This string does not have a unicode \\u escape." notunicode2 = "This string does not have a unicode \u005Cu escape." notunicode3 = "This string does not have a unicode \\u0075 escape." notunicode4 = "This string does not have a unicode \\\u0075 escape." delete = "This string has a \u007F delete control code." unitseparator = "This string has a \u001F unit separator control code." tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-nl.json000066400000000000000000000006151413547640500253140ustar00rootroot00000000000000{ "nl_mid": { "type": "string", "value": "val\nue" }, "nl_end": { "type": "string", "value": "value\n" }, "lit_nl_end": { "type": "string", "value": "value\\n" }, "lit_nl_mid": { "type": "string", "value": "val\\nue" }, "lit_nl_uni": { "type": "string", "value": "val\\ue" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-nl.toml000066400000000000000000000001631413547640500253140ustar00rootroot00000000000000nl_mid = "val\nue" nl_end = """value\n""" lit_nl_end = '''value\n''' lit_nl_mid = 'val\nue' lit_nl_uni = 'val\ue' tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-simple.json000066400000000000000000000001531413547640500261710ustar00rootroot00000000000000{ "answer": { "type": "string", "value": "You are not drinking enough whisky." } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-simple.toml000066400000000000000000000000571413547640500261760ustar00rootroot00000000000000answer = "You are not drinking enough whisky." tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-unicode-escape.json000066400000000000000000000001731413547640500275660ustar00rootroot00000000000000{ "answer4": { "type": "string", "value": "δ" }, "answer8": { "type": "string", "value": "δ" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-unicode-escape.toml000066400000000000000000000000521413547640500275640ustar00rootroot00000000000000answer4 = "\u03B4" answer8 = "\U000003B4" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-unicode-literal.json000066400000000000000000000000761413547640500277640ustar00rootroot00000000000000{ "answer": { "type": "string", "value": "δ" } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-unicode-literal.toml000066400000000000000000000000161413547640500277600ustar00rootroot00000000000000answer = "δ" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-with-pound.json000066400000000000000000000002711413547640500267770ustar00rootroot00000000000000{ "pound": {"type": "string", "value": "We see no # comments here."}, "poundcomment": { "type": "string", "value": "But there are # some comments here." } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/string-with-pound.toml000066400000000000000000000001611413547640500267770ustar00rootroot00000000000000pound = "We see no # comments here." poundcomment = "But there are # some comments here." # Did I # mess you up? tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-implicit.json000066400000000000000000000002201413547640500274020ustar00rootroot00000000000000{ "albums": { "songs": {"type": "array", "value": [ {"name": {"type": "string", "value": "Glory Days"}} ]} } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-implicit.toml000066400000000000000000000000451413547640500274110ustar00rootroot00000000000000[[albums.songs]] name = "Glory Days" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-many.json000066400000000000000000000007631413547640500265500ustar00rootroot00000000000000{ "people": {"type": "array", "value": [ { "first_name": {"type": "string", "value": "Bruce"}, "last_name": {"type": "string", "value": "Springsteen"} }, { "first_name": {"type": "string", "value": "Eric"}, "last_name": {"type": "string", "value": "Clapton"} }, { "first_name": {"type": "string", "value": "Bob"}, "last_name": {"type": "string", "value": "Seger"} } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-many.toml000066400000000000000000000002431413547640500265430ustar00rootroot00000000000000[[people]] first_name = "Bruce" last_name = "Springsteen" [[people]] first_name = "Eric" last_name = "Clapton" [[people]] first_name = "Bob" last_name = "Seger" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-nest.json000066400000000000000000000012161413547640500265470ustar00rootroot00000000000000{ "albums": {"type": "array", "value": [ { "name": {"type": "string", "value": "Born to Run"}, "songs": {"type": "array", "value": [ {"name": {"type": "string", "value": "Jungleland"}}, {"name": {"type": "string", "value": "Meeting Across the River"}} ]} }, { "name": {"type": "string", "value": "Born in the USA"}, "songs": {"type": "array", "value": [ {"name": {"type": "string", "value": "Glory Days"}}, {"name": {"type": "string", "value": "Dancing in the Dark"}} ]} } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-nest.toml000066400000000000000000000004061413547640500265510ustar00rootroot00000000000000[[albums]] name = "Born to Run" [[albums.songs]] name = "Jungleland" [[albums.songs]] name = "Meeting Across the River" [[albums]] name = "Born in the USA" [[albums.songs]] name = "Glory Days" [[albums.songs]] name = "Dancing in the Dark" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-one.json000066400000000000000000000003401413547640500263540ustar00rootroot00000000000000{ "people": { "type": "array", "value": [ { "first_name": {"type": "string", "value": "Bruce"}, "last_name": {"type": "string", "value": "Springsteen"} } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-one.toml000066400000000000000000000000721413547640500263600ustar00rootroot00000000000000[[people]] first_name = "Bruce" last_name = "Springsteen" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-table-array.json000066400000000000000000000003541413547640500300030ustar00rootroot00000000000000 { "a": {"type": "array", "value": [ { "b": {"type": "array", "value": [ { "c" : { "d": {"type": "string", "value": "val0" } } }, { "c" : { "d": {"type": "string", "value": "val1" } } } ]} } ]} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-array-table-array.toml000066400000000000000000000001541413547640500300030ustar00rootroot00000000000000[[a]] [[a.b]] [a.b.c] d = "val0" [[a.b]] [a.b.c] d = "val1" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-empty.json000066400000000000000000000000201413547640500256100ustar00rootroot00000000000000{ "a": {} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-empty.toml000066400000000000000000000000041413547640500256140ustar00rootroot00000000000000[a] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-no-eol.json000066400000000000000000000000201413547640500256430ustar00rootroot00000000000000{ "table": {} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-no-eol.toml000066400000000000000000000000101413547640500256440ustar00rootroot00000000000000[table] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-sub-empty.json000066400000000000000000000000311413547640500264010ustar00rootroot00000000000000{ "a": { "b": {} } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-sub-empty.toml000066400000000000000000000000121413547640500264020ustar00rootroot00000000000000[a] [a.b] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-whitespace.json000066400000000000000000000000301413547640500266070ustar00rootroot00000000000000{ "valid key": {} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-whitespace.toml000066400000000000000000000000161413547640500266150ustar00rootroot00000000000000["valid key"] tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-with-literal-string.json000066400000000000000000000002201413547640500303650ustar00rootroot00000000000000{ "a": { "\"b\"": { "c": { "answer": {"type": "integer", "value": "42"} } } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-with-literal-string.toml000066400000000000000000000000511413547640500303710ustar00rootroot00000000000000['a'] [a.'"b"'] [a.'"b"'.c] answer = 42 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-with-pound.json000066400000000000000000000001221413547640500265530ustar00rootroot00000000000000{ "key#group": { "answer": {"type": "integer", "value": "42"} } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-with-pound.toml000066400000000000000000000000321413547640500265550ustar00rootroot00000000000000["key#group"] answer = 42 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-with-single-quotes.json000066400000000000000000000002141413547640500302270ustar00rootroot00000000000000{ "a": { "b": { "c": { "answer": {"type": "integer", "value": "42"} } } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-with-single-quotes.toml000066400000000000000000000000451413547640500302330ustar00rootroot00000000000000['a'] [a.'b'] [a.'b'.c] answer = 42 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-without-super.json000066400000000000000000000001471413547640500273230ustar00rootroot00000000000000{ "x": { "y": { "z": { "w": {} } } } } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/table-without-super.toml000066400000000000000000000001701413547640500273210ustar00rootroot00000000000000# [x] you # [x.y] don't # [x.y.z] need these [x.y.z.w] # for this to work [x] # defining a super-table afterwards is ok tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/underscored-float.json000066400000000000000000000001071413547640500270130ustar00rootroot00000000000000{ "electron_mass": {"type": "float", "value": "9.109109383e-31"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/underscored-float.toml000066400000000000000000000000431413547640500270140ustar00rootroot00000000000000electron_mass = 9_109.109_383e-3_4 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/underscored-integer.json000066400000000000000000000000731413547640500273450ustar00rootroot00000000000000{ "million": {"type": "integer", "value": "1000000"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/underscored-integer.toml000066400000000000000000000000241413547640500273430ustar00rootroot00000000000000million = 1_000_000 tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/unicode-escape.json000066400000000000000000000001571413547640500262640ustar00rootroot00000000000000{ "answer4": {"type": "string", "value": "\u03B4"}, "answer8": {"type": "string", "value": "\u03B4"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/unicode-escape.toml000066400000000000000000000000521413547640500262600ustar00rootroot00000000000000answer4 = "\u03B4" answer8 = "\U000003B4" tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/unicode-literal.json000066400000000000000000000000641413547640500264550ustar00rootroot00000000000000{ "answer": {"type": "string", "value": "δ"} } tomli-1.2.2/tests/data/extras/valid/burntsushi-repo/unicode-literal.toml000066400000000000000000000000161413547640500264540ustar00rootroot00000000000000answer = "δ" tomli-1.2.2/tests/data/extras/valid/empty-inline-table.json000066400000000000000000000000161413547640500237200ustar00rootroot00000000000000{"empty": {}}tomli-1.2.2/tests/data/extras/valid/empty-inline-table.toml000066400000000000000000000000431413547640500237220ustar00rootroot00000000000000empty ={ }#nothing here tomli-1.2.2/tests/data/extras/valid/five-quotes.json000066400000000000000000000001161413547640500224710ustar00rootroot00000000000000{"five-quotes": {"type":"string","value":"Closing with five quotes\n\"\""}} tomli-1.2.2/tests/data/extras/valid/five-quotes.toml000066400000000000000000000000611413547640500224720ustar00rootroot00000000000000five-quotes = """ Closing with five quotes """"" tomli-1.2.2/tests/data/extras/valid/multiline-basic-str/000077500000000000000000000000001413547640500232205ustar00rootroot00000000000000tomli-1.2.2/tests/data/extras/valid/multiline-basic-str/ends-in-whitespace-escape.json000066400000000000000000000000661413547640500310420ustar00rootroot00000000000000{"beee": {"type": "string", "value": "heeee\ngeeee"}} tomli-1.2.2/tests/data/extras/valid/multiline-basic-str/ends-in-whitespace-escape.toml000066400000000000000000000000441413547640500310400ustar00rootroot00000000000000beee = """ heeee geeee\ """ tomli-1.2.2/tests/data/extras/valid/no-newlines.json000066400000000000000000000000031413547640500224530ustar00rootroot00000000000000{} tomli-1.2.2/tests/data/extras/valid/no-newlines.toml000066400000000000000000000000301413547640500224550ustar00rootroot00000000000000#no newlines at all heretomli-1.2.2/tests/data/toml-lang-compliance/000077500000000000000000000000001413547640500207265ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/LICENSE000066400000000000000000000022101413547640500217260ustar00rootroot00000000000000The MIT License Copyright (c) 2021 Pradyun Gedam and Contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Portions of the Software include code copyright (c) Rebecca Turner. tomli-1.2.2/tests/data/toml-lang-compliance/README.md000066400000000000000000000004661413547640500222130ustar00rootroot00000000000000These test cases are copied from https://github.com/pyrmont/toml-specs/tree/989fdfb02f6ca0a9e3b0a09b5e5f5283e02f1fa7 There is an open PR (https://github.com/toml-lang/compliance/pull/8) to merge the tests into https://github.com/toml-lang/compliance after which we should sync the tests with that repository. tomli-1.2.2/tests/data/toml-lang-compliance/invalid/000077500000000000000000000000001413547640500223545ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/array/000077500000000000000000000000001413547640500234725ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/array/array-of-tables-1.toml000066400000000000000000000000671413547640500275200ustar00rootroot00000000000000# INVALID TOML DOC fruit = [] [[fruit]] # Not allowed tomli-1.2.2/tests/data/toml-lang-compliance/invalid/array/array-of-tables-2.toml000066400000000000000000000002741413547640500275210ustar00rootroot00000000000000# INVALID TOML DOC [[fruit]] name = "apple" [[fruit.variety]] name = "red delicious" # This table conflicts with the previous table [fruit.variety] name = "granny smith" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/comment/000077500000000000000000000000001413547640500240165ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/comment/comment-control-1.toml000066400000000000000000000000171413547640500301670ustar00rootroot00000000000000a = "null" # tomli-1.2.2/tests/data/toml-lang-compliance/invalid/comment/comment-control-2.toml000066400000000000000000000000211413547640500301630ustar00rootroot00000000000000a = "ctrl-P" #  tomli-1.2.2/tests/data/toml-lang-compliance/invalid/comment/comment-control-3.toml000066400000000000000000000000211413547640500301640ustar00rootroot00000000000000a = "ctrl-_" #  tomli-1.2.2/tests/data/toml-lang-compliance/invalid/comment/comment-control-4.toml000066400000000000000000000000171413547640500301720ustar00rootroot00000000000000a = "0x7f" #  tomli-1.2.2/tests/data/toml-lang-compliance/invalid/integer/000077500000000000000000000000001413547640500240115ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/integer/int-0-padded.toml000066400000000000000000000000131413547640500270460ustar00rootroot00000000000000int = 0123 tomli-1.2.2/tests/data/toml-lang-compliance/invalid/integer/int-signed-bin.toml000066400000000000000000000000141413547640500275100ustar00rootroot00000000000000bin = +0b10 tomli-1.2.2/tests/data/toml-lang-compliance/invalid/integer/int-signed-hex.toml000066400000000000000000000000141413547640500275240ustar00rootroot00000000000000hex = +0xab tomli-1.2.2/tests/data/toml-lang-compliance/invalid/integer/int-signed-oct.toml000066400000000000000000000000141413547640500275250ustar00rootroot00000000000000oct = +0o23 tomli-1.2.2/tests/data/toml-lang-compliance/invalid/key-value/000077500000000000000000000000001413547640500242565ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/key-value/bare-key-1.toml000066400000000000000000000000171413547640500270060ustar00rootroot00000000000000bare!key = 123 tomli-1.2.2/tests/data/toml-lang-compliance/invalid/key-value/bare-key-2.toml000066400000000000000000000000211413547640500270020ustar00rootroot00000000000000barekey = 123 tomli-1.2.2/tests/data/toml-lang-compliance/invalid/key-value/bare-key-3.toml000066400000000000000000000000121413547640500270030ustar00rootroot00000000000000barekey = tomli-1.2.2/tests/data/toml-lang-compliance/invalid/key-value/key-value-pair-1.toml000066400000000000000000000000201413547640500301340ustar00rootroot00000000000000key = # INVALID tomli-1.2.2/tests/data/toml-lang-compliance/invalid/key-value/key-value-pair-2.toml000066400000000000000000000000601413547640500301410ustar00rootroot00000000000000first = "Tom" last = "Preston-Werner" # INVALID tomli-1.2.2/tests/data/toml-lang-compliance/invalid/key-value/multiple-dot-key.toml000066400000000000000000000003411413547640500303560ustar00rootroot00000000000000# THE FOLLOWING IS INVALID # This defines the value of fruit.apple to be an integer. fruit.apple = 1 # But then this treats fruit.apple like it's a table. # You can't turn an integer into a table. fruit.apple.smooth = true tomli-1.2.2/tests/data/toml-lang-compliance/invalid/key-value/multiple-key.toml000066400000000000000000000000571413547640500275760ustar00rootroot00000000000000# DO NOT DO THIS name = "Tom" name = "Pradyun" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/key-value/no-key-name.toml000066400000000000000000000000331413547640500272670ustar00rootroot00000000000000= "no key name" # INVALID tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/000077500000000000000000000000001413547640500236625ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-control-1.toml000066400000000000000000000000141413547640500307530ustar00rootroot00000000000000a = "null" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-control-2.toml000066400000000000000000000000161413547640500307560ustar00rootroot00000000000000a = "ctrl-P" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-control-3.toml000066400000000000000000000000161413547640500307570ustar00rootroot00000000000000a = "ctrl-_" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-control-4.toml000066400000000000000000000000141413547640500307560ustar00rootroot00000000000000a = "0x7f" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-multiline-control-1.toml000066400000000000000000000000201413547640500327500ustar00rootroot00000000000000a = """null""" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-multiline-control-2.toml000066400000000000000000000000201413547640500327510ustar00rootroot00000000000000a = """null""" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-multiline-control-3.toml000066400000000000000000000000201413547640500327520ustar00rootroot00000000000000a = """null""" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-multiline-control-4.toml000066400000000000000000000000201413547640500327530ustar00rootroot00000000000000a = """null""" string-basic-multiline-invalid-backslash.toml000066400000000000000000000000341413547640500344370ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/stringa = """ foo \ \n bar""" string-basic-multiline-out-of-range-unicode-escape-1.toml000066400000000000000000000000251413547640500364030ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/stringa = """\UFFFFFFFF""" string-basic-multiline-out-of-range-unicode-escape-2.toml000066400000000000000000000000251413547640500364040ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/stringa = """\U00D80000""" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-multiline-quotes.toml000066400000000000000000000000621413547640500324600ustar00rootroot00000000000000str5 = """Here are three quotation marks: """.""" string-basic-multiline-unknown-escape.toml000066400000000000000000000000151413547640500340140ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/stringa = """\@""" string-basic-out-of-range-unicode-escape-1.toml000066400000000000000000000000211413547640500343770ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/stringa = "\UFFFFFFFF" string-basic-out-of-range-unicode-escape-2.toml000066400000000000000000000000211413547640500344000ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/stringa = "\U00D80000" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-basic-unknown-escape.toml000066400000000000000000000000111413547640500320670ustar00rootroot00000000000000a = "\@" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-literal-control-1.toml000066400000000000000000000000141413547640500313260ustar00rootroot00000000000000a = 'null' tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-literal-control-2.toml000066400000000000000000000000141413547640500313270ustar00rootroot00000000000000a = 'null' tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-literal-control-3.toml000066400000000000000000000000141413547640500313300ustar00rootroot00000000000000a = 'null' tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-literal-control-4.toml000066400000000000000000000000141413547640500313310ustar00rootroot00000000000000a = 'null' tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-literal-multiline-control-1.toml000066400000000000000000000000201413547640500333230ustar00rootroot00000000000000a = '''null''' tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-literal-multiline-control-2.toml000066400000000000000000000000201413547640500333240ustar00rootroot00000000000000a = '''null''' tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-literal-multiline-control-4.toml000066400000000000000000000000201413547640500333260ustar00rootroot00000000000000a = '''null''' tomli-1.2.2/tests/data/toml-lang-compliance/invalid/string/string-literal-multiline-quotes.toml000066400000000000000000000001101413547640500330250ustar00rootroot00000000000000apos15 = '''Here are fifteen apostrophes: '''''''''''''''''' # INVALID tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/000077500000000000000000000000001413547640500234435ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/inline-table-immutable-1.toml000066400000000000000000000001021413547640500310070ustar00rootroot00000000000000[product] type = { name = "Nail" } type.edible = false # INVALID tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/inline-table-immutable-2.toml000066400000000000000000000001021413547640500310100ustar00rootroot00000000000000[product] type.name = "Nail" type = { edible = false } # INVALID tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/inline-table-trailing-comma.toml000066400000000000000000000000251413547640500316010ustar00rootroot00000000000000abc = { abc = 123, } tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/table-1.toml000066400000000000000000000001031413547640500255570ustar00rootroot00000000000000# DO NOT DO THIS [fruit] apple = "red" [fruit] orange = "orange" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/table-2.toml000066400000000000000000000001211413547640500255600ustar00rootroot00000000000000# DO NOT DO THIS EITHER [fruit] apple = "red" [fruit.apple] texture = "smooth" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/table-3.toml000066400000000000000000000001171413547640500255660ustar00rootroot00000000000000[fruit] apple.color = "red" apple.taste.sweet = true [fruit.apple] # INVALID tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/table-4.toml000066400000000000000000000001251413547640500255660ustar00rootroot00000000000000[fruit] apple.color = "red" apple.taste.sweet = true [fruit.apple.taste] # INVALID tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/table-invalid-1.toml000066400000000000000000000003631413547640500272130ustar00rootroot00000000000000[fruit.physical] # subtable, but to which parent element should it belong? color = "red" shape = "round" [[fruit]] # parser must throw an error upon discovering that "fruit" is # an array rather than a table name = "apple" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/table-invalid-2.toml000066400000000000000000000000671413547640500272150ustar00rootroot00000000000000# INVALID TOML DOC fruit = [] [[fruit]] # Not allowed tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/table-invalid-3.toml000066400000000000000000000004111413547640500272070ustar00rootroot00000000000000# INVALID TOML DOC [[fruit]] name = "apple" [[fruit.variety]] name = "red delicious" # INVALID: This table conflicts with the previous array of tables [fruit.variety] name = "granny smith" [fruit.physical] color = "red" shape = "round" tomli-1.2.2/tests/data/toml-lang-compliance/invalid/table/table-invalid-4.toml000066400000000000000000000004061413547640500272140ustar00rootroot00000000000000# INVALID TOML DOC [[fruit]] name = "apple" [[fruit.variety]] name = "red delicious" [fruit.physical] color = "red" shape = "round" # INVALID: This array of tables conflicts with the previous table [[fruit.physical]] color = "green" tomli-1.2.2/tests/data/toml-lang-compliance/valid/000077500000000000000000000000001413547640500220255ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/000077500000000000000000000000001413547640500231435ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-1.json000066400000000000000000000002271413547640500262430ustar00rootroot00000000000000{"integers": {"type":"array","value":[ {"type":"integer","value":"1"}, {"type":"integer","value":"2"}, {"type":"integer","value":"3"}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-1.toml000066400000000000000000000000271413547640500262430ustar00rootroot00000000000000integers = [ 1, 2, 3 ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-2.json000066400000000000000000000002351413547640500262430ustar00rootroot00000000000000{"colors": {"type":"array","value":[ {"type":"string","value":"red"}, {"type":"string","value":"yellow"}, {"type":"string","value":"green"}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-2.toml000066400000000000000000000000461413547640500262450ustar00rootroot00000000000000colors = [ "red", "yellow", "green" ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-3.json000066400000000000000000000004641413547640500262500ustar00rootroot00000000000000{"nested_array_of_int": {"type":"array","value":[ {"type":"array","value":[ {"type":"integer","value":"1"}, {"type":"integer","value":"2"}]}, {"type":"array","value":[ {"type":"integer","value":"3"}, {"type":"integer","value":"4"}, {"type":"integer","value":"5"}]}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-3.toml000066400000000000000000000000561413547640500262470ustar00rootroot00000000000000nested_array_of_int = [ [ 1, 2 ], [3, 4, 5] ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-4.json000066400000000000000000000003211413547640500262410ustar00rootroot00000000000000{"string_array": {"type":"array","value":[ {"type":"string","value":"all"}, {"type":"string","value":"strings"}, {"type":"string","value":"are the same"}, {"type":"string","value":"type"}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-4.toml000066400000000000000000000001031413547640500262410ustar00rootroot00000000000000string_array = [ "all", 'strings', """are the same""", '''type'''] tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-5.json000066400000000000000000000004601413547640500262460ustar00rootroot00000000000000{"nested_mixed_array": {"type":"array","value":[ {"type":"array","value":[ {"type":"integer","value":"1"}, {"type":"integer","value":"2"}]}, {"type":"array","value":[ {"type":"string","value":"a"}, {"type":"string","value":"b"}, {"type":"string","value":"c"}]}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-5.toml000066400000000000000000000000631413547640500262470ustar00rootroot00000000000000nested_mixed_array = [ [ 1, 2 ], ["a", "b", "c"] ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-7.json000066400000000000000000000002301413547640500262430ustar00rootroot00000000000000{"integers2": {"type":"array","value":[ {"type":"integer","value":"1"}, {"type":"integer","value":"2"}, {"type":"integer","value":"3"}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-7.toml000066400000000000000000000000321413547640500262450ustar00rootroot00000000000000integers2 = [ 1, 2, 3 ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-8.json000066400000000000000000000001641413547640500262520ustar00rootroot00000000000000{"integers3": {"type":"array","value":[ {"type":"integer","value":"1"}, {"type":"integer","value":"2"}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-8.toml000066400000000000000000000000471413547640500262540ustar00rootroot00000000000000integers3 = [ 1, 2, # this is ok ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-mixed-number-types.json000066400000000000000000000004021413547640500316340ustar00rootroot00000000000000{"numbers": {"type":"array","value":[ {"type":"float","value":"0.1"}, {"type":"float","value":"0.2"}, {"type":"float","value":"0.5"}, {"type":"integer","value":"1"}, {"type":"integer","value":"2"}, {"type":"integer","value":"5"}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-mixed-number-types.toml000066400000000000000000000000451413547640500316410ustar00rootroot00000000000000numbers = [ 0.1, 0.2, 0.5, 1, 2, 5 ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-more-mixed-types.json000066400000000000000000000004621413547640500313140ustar00rootroot00000000000000{"contributors": {"type":"array","value":[ {"type":"string","value":"Foo Bar "}, {"name": {"type":"string","value":"Baz Qux"}, "email": {"type":"string","value":"bazqux@example.com"}, "url": {"type":"string", "value":"https://example.com/bazqux"}}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-more-mixed-types.toml000066400000000000000000000002131413547640500313100ustar00rootroot00000000000000contributors = [ "Foo Bar ", { name = "Baz Qux", email = "bazqux@example.com", url = "https://example.com/bazqux" } ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-of-tables-1.json000066400000000000000000000005131413547640500301130ustar00rootroot00000000000000{"products": {"type":"array","value":[ {"name": {"type":"string","value":"Hammer"}, "sku": {"type":"integer","value":"738594937"}}, {}, {"name": {"type":"string","value":"Nail"}, "sku": {"type":"integer","value":"284758393"}, "color": {"type":"string","value":"gray"}}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-of-tables-1.toml000066400000000000000000000001661413547640500301210ustar00rootroot00000000000000[[products]] name = "Hammer" sku = 738594937 [[products]] [[products]] name = "Nail" sku = 284758393 color = "gray" tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-of-tables-2.json000066400000000000000000000011251413547640500301140ustar00rootroot00000000000000{"fruit": {"type":"array","value":[ {"name": {"type":"string","value":"apple"}, "physical": {"color": {"type":"string","value":"red"}, "shape": {"type":"string","value":"round"}}, "variety": {"type":"array","value":[ {"name": {"type":"string","value":"red delicious"}}, {"name": {"type":"string","value":"granny smith"}}]}}, {"name": {"type":"string","value":"banana"}, "variety": {"type":"array","value":[ {"name": {"type":"string","value":"plantain"}}]}}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-of-tables-2.toml000066400000000000000000000003741413547640500301230ustar00rootroot00000000000000[[fruit]] name = "apple" [fruit.physical] color = "red" shape = "round" [[fruit.variety]] name = "red delicious" [[fruit.variety]] name = "granny smith" [[fruit]] name = "banana" [[fruit.variety]] name = "plantain" tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-of-tables-3.json000066400000000000000000000007341413547640500301220ustar00rootroot00000000000000{"points": {"type":"array","value":[ {"x": {"type":"integer","value":"1"}, "y": {"type":"integer","value":"2"}, "z": {"type":"integer","value":"3"}}, {"x": {"type":"integer","value":"7"}, "y": {"type":"integer","value":"8"}, "z": {"type":"integer","value":"9"}}, {"x": {"type":"integer","value":"2"}, "y": {"type":"integer","value":"4"}, "z": {"type":"integer","value":"8"}}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/array/spec-array-of-tables-3.toml000066400000000000000000000001551413547640500301210ustar00rootroot00000000000000points = [ { x = 1, y = 2, z = 3 }, { x = 7, y = 8, z = 9 }, { x = 2, y = 4, z = 8 } ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/boolean/000077500000000000000000000000001413547640500234445ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/boolean/spec-boolean-1.json000066400000000000000000000000571413547640500270460ustar00rootroot00000000000000{"bool1": {"type":"boolean","value":"true"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/boolean/spec-boolean-1.toml000066400000000000000000000000151413547640500270420ustar00rootroot00000000000000bool1 = true tomli-1.2.2/tests/data/toml-lang-compliance/valid/boolean/spec-boolean-2.json000066400000000000000000000000601413547640500270410ustar00rootroot00000000000000{"bool1": {"type":"boolean","value":"false"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/boolean/spec-boolean-2.toml000066400000000000000000000000161413547640500270440ustar00rootroot00000000000000bool1 = false tomli-1.2.2/tests/data/toml-lang-compliance/valid/comment/000077500000000000000000000000001413547640500234675ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/comment/spec-comment-mid-array.json000066400000000000000000000001621413547640500306360ustar00rootroot00000000000000{"abc": {"type":"array","value":[ {"type":"integer","value":"123"}, {"type":"integer","value":"456"}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/comment/spec-comment-mid-array.toml000066400000000000000000000001701413547640500306370ustar00rootroot00000000000000# eol commetns can go anywhere abc = [ # this is valid 123,#as is this 456 #so is this ]# and this # here too tomli-1.2.2/tests/data/toml-lang-compliance/valid/comment/spec-comment-mid-string.json000066400000000000000000000001031413547640500310210ustar00rootroot00000000000000{"another": {"type":"string","value":"# This is not a comment"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/comment/spec-comment-mid-string.toml000066400000000000000000000000441413547640500310270ustar00rootroot00000000000000another = "# This is not a comment" tomli-1.2.2/tests/data/toml-lang-compliance/valid/comment/spec-comment-tab.json000066400000000000000000000000551413547640500275200ustar00rootroot00000000000000{"key": {"type":"string","value":"value"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/comment/spec-comment-tab.toml000066400000000000000000000002061413547640500275200ustar00rootroot00000000000000# This is a full-line comment with a tab in the middle key = "value" # This is a commen with a tab in the middle at the end of a line tomli-1.2.2/tests/data/toml-lang-compliance/valid/comment/spec-comment.json000066400000000000000000000000551413547640500267540ustar00rootroot00000000000000{"key": {"type":"string","value":"value"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/comment/spec-comment.toml000066400000000000000000000001251413547640500267540ustar00rootroot00000000000000# This is a full-line comment key = "value" # This is a comment at the end of a line tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/000077500000000000000000000000001413547640500236765ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-local-1.json000066400000000000000000000000661413547640500276660ustar00rootroot00000000000000{"ld1": {"type":"local date","value":"1979-05-27"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-local-1.toml000066400000000000000000000000211413547640500276570ustar00rootroot00000000000000ld1 = 1979-05-27 tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-1.json000066400000000000000000000001061413547640500275250ustar00rootroot00000000000000{"odt1": {"type":"offset datetime","value":"1979-05-27T07:32:00Z"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-1.toml000066400000000000000000000000341413547640500275270ustar00rootroot00000000000000odt1 = 1979-05-27T07:32:00Z tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-2.json000066400000000000000000000001131413547640500275240ustar00rootroot00000000000000{"odt2": {"type":"offset datetime","value":"1979-05-27T00:32:00-07:00"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-2.toml000066400000000000000000000000411413547640500275260ustar00rootroot00000000000000odt2 = 1979-05-27T00:32:00-07:00 tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-3.json000066400000000000000000000001221413547640500275250ustar00rootroot00000000000000{"odt3": {"type":"offset datetime","value":"1979-05-27T00:32:00.999999-07:00"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-3.toml000066400000000000000000000000501413547640500275270ustar00rootroot00000000000000odt3 = 1979-05-27T00:32:00.999999-07:00 tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-4.json000066400000000000000000000001061413547640500275300ustar00rootroot00000000000000{"odt4": {"type":"offset datetime","value":"1979-05-27T07:32:00Z"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-4.toml000066400000000000000000000000341413547640500275320ustar00rootroot00000000000000odt4 = 1979-05-27 07:32:00Z tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-5.json000066400000000000000000000001121413547640500275260ustar00rootroot00000000000000{"odt5": {"type":"offset datetime","value":"1979-05-27T07:32:00.123Z"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-5.toml000066400000000000000000000000401413547640500275300ustar00rootroot00000000000000odt5 = 1979-05-27T07:32:00.123Z tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-6.json000066400000000000000000000001131413547640500275300ustar00rootroot00000000000000{"odt6": {"type":"offset datetime","value":"1979-05-27T07:32:00.1239Z"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-6.toml000066400000000000000000000000411413547640500275320ustar00rootroot00000000000000odt6 = 1979-05-27T07:32:00.1239Z tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-local-1.json000066400000000000000000000001041413547640500306130ustar00rootroot00000000000000{"ldt1": {"type":"local datetime","value":"1979-05-27T07:32:00"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-local-1.toml000066400000000000000000000000331413547640500306160ustar00rootroot00000000000000ldt1 = 1979-05-27T07:32:00 tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-local-2.json000066400000000000000000000001131413547640500306140ustar00rootroot00000000000000{"ldt2": {"type":"local datetime","value":"1979-05-27T00:32:00.999999"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-date-time-local-2.toml000066400000000000000000000000421413547640500306170ustar00rootroot00000000000000ldt2 = 1979-05-27T00:32:00.999999 tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-time-1.json000066400000000000000000000000641413547640500266150ustar00rootroot00000000000000{"lt1": {"type":"local time","value":"07:32:00"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-time-1.toml000066400000000000000000000000171413547640500266150ustar00rootroot00000000000000lt1 = 07:32:00 tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-time-2.json000066400000000000000000000000731413547640500266160ustar00rootroot00000000000000{"lt2": {"type":"local time","value":"00:32:00.999999"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/date-time/spec-time-2.toml000066400000000000000000000000261413547640500266160ustar00rootroot00000000000000lt2 = 00:32:00.999999 tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/000077500000000000000000000000001413547640500231325ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-1.json000066400000000000000000000000511413547640500262140ustar00rootroot00000000000000{"flt1": {"type":"float","value":"1"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-1.toml000066400000000000000000000000141413547640500262150ustar00rootroot00000000000000flt1 = +1.0 tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-10.json000066400000000000000000000000521413547640500262750ustar00rootroot00000000000000{"sf1": {"type":"float","value":"inf"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-10.toml000066400000000000000000000000371413547640500263020ustar00rootroot00000000000000sf1 = inf # positive infinity tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-11.json000066400000000000000000000000521413547640500262760ustar00rootroot00000000000000{"sf2": {"type":"float","value":"inf"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-11.toml000066400000000000000000000000371413547640500263030ustar00rootroot00000000000000sf2 = +inf # positive infinity tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-12.json000066400000000000000000000000531413547640500263000ustar00rootroot00000000000000{"sf3": {"type":"float","value":"-inf"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-12.toml000066400000000000000000000000371413547640500263040ustar00rootroot00000000000000sf3 = -inf # negative infinity tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-13.json000066400000000000000000000000521413547640500263000ustar00rootroot00000000000000{"sf4": {"type":"float","value":"nan"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-13.toml000066400000000000000000000001021413547640500262760ustar00rootroot00000000000000sf4 = nan # actual sNaN/qNaN encoding is implementation specific tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-14.json000066400000000000000000000000521413547640500263010ustar00rootroot00000000000000{"sf5": {"type":"float","value":"nan"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-14.toml000066400000000000000000000000331413547640500263020ustar00rootroot00000000000000sf5 = +nan # same as `nan` tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-15.json000066400000000000000000000000521413547640500263020ustar00rootroot00000000000000{"sf6": {"type":"float","value":"nan"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-15.toml000066400000000000000000000000771413547640500263130ustar00rootroot00000000000000sf6 = -nan # valid, actual encoding is implementation specific tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-2.json000066400000000000000000000000561413547640500262220ustar00rootroot00000000000000{"flt2": {"type":"float","value":"3.1415"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-2.toml000066400000000000000000000000161413547640500262200ustar00rootroot00000000000000flt2 = 3.1415 tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-3.json000066400000000000000000000000551413547640500262220ustar00rootroot00000000000000{"flt3": {"type":"float","value":"-0.01"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-3.toml000066400000000000000000000000151413547640500262200ustar00rootroot00000000000000flt3 = -0.01 tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-4.json000066400000000000000000000000551413547640500262230ustar00rootroot00000000000000{"flt4": {"type":"float","value":"5e+22"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-4.toml000066400000000000000000000000151413547640500262210ustar00rootroot00000000000000flt4 = 5e+22 tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-5.json000066400000000000000000000000571413547640500262260ustar00rootroot00000000000000{"flt5": {"type":"float","value":"1000000"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-5.toml000066400000000000000000000000141413547640500262210ustar00rootroot00000000000000flt5 = 1e06 tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-6.json000066400000000000000000000000551413547640500262250ustar00rootroot00000000000000{"flt6": {"type":"float","value":"-0.02"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-6.toml000066400000000000000000000000151413547640500262230ustar00rootroot00000000000000flt6 = -2E-2 tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-7.json000066400000000000000000000000611413547640500262230ustar00rootroot00000000000000{"flt7": {"type":"float","value":"6.626e-34"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-7.toml000066400000000000000000000000211413547640500262210ustar00rootroot00000000000000flt7 = 6.626e-34 tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-8.json000066400000000000000000000000701413547640500262240ustar00rootroot00000000000000{"flt8": {"type":"float","value":"224617.445991228"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-8.toml000066400000000000000000000000331413547640500262250ustar00rootroot00000000000000flt8 = 224_617.445_991_228 tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-9.json000066400000000000000000000000521413547640500262250ustar00rootroot00000000000000{"flt9": {"type":"float","value":"-0"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/float/spec-float-9.toml000066400000000000000000000000141413547640500262250ustar00rootroot00000000000000flt9 = -0e0 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/000077500000000000000000000000001413547640500234625ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-1.json000066400000000000000000000000541413547640500262340ustar00rootroot00000000000000{"int1": {"type":"integer","value":"99"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-1.toml000066400000000000000000000000131413547640500262310ustar00rootroot00000000000000int1 = +99 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-2.json000066400000000000000000000000541413547640500262350ustar00rootroot00000000000000{"int2": {"type":"integer","value":"42"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-2.toml000066400000000000000000000000121413547640500262310ustar00rootroot00000000000000int2 = 42 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-3.json000066400000000000000000000000531413547640500262350ustar00rootroot00000000000000{"int3": {"type":"integer","value":"0"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-3.toml000066400000000000000000000000111413547640500262310ustar00rootroot00000000000000int3 = 0 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-3a.json000066400000000000000000000000541413547640500263770ustar00rootroot00000000000000{"int3a": {"type":"integer","value":"0"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-3a.toml000066400000000000000000000000131413547640500263740ustar00rootroot00000000000000int3a = +0 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-3b.json000066400000000000000000000000541413547640500264000ustar00rootroot00000000000000{"int3b": {"type":"integer","value":"0"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-3b.toml000066400000000000000000000000131413547640500263750ustar00rootroot00000000000000int3b = -0 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-4.json000066400000000000000000000000551413547640500262400ustar00rootroot00000000000000{"int4": {"type":"integer","value":"-17"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-4.toml000066400000000000000000000000131413547640500262340ustar00rootroot00000000000000int4 = -17 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-5.json000066400000000000000000000000561413547640500262420ustar00rootroot00000000000000{"int5": {"type":"integer","value":"1000"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-5.toml000066400000000000000000000000151413547640500262370ustar00rootroot00000000000000int5 = 1_000 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-6.json000066400000000000000000000000611413547640500262370ustar00rootroot00000000000000{"int6": {"type":"integer","value":"5349221"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-6.toml000066400000000000000000000000211413547640500262350ustar00rootroot00000000000000int6 = 5_349_221 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-7.json000066400000000000000000000000571413547640500262450ustar00rootroot00000000000000{"int7": {"type":"integer","value":"12345"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-7.toml000066400000000000000000000000551413547640500262450ustar00rootroot00000000000000int7 = 1_2_3_4_5 # VALID but discouraged tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-bin1.json000066400000000000000000000000551413547640500267260ustar00rootroot00000000000000{"bin1": {"type":"integer","value":"214"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-bin1.toml000066400000000000000000000000221413547640500267220ustar00rootroot00000000000000bin1 = 0b11010110 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-hex1.json000066400000000000000000000000641413547640500267420ustar00rootroot00000000000000{"hex1": {"type":"integer","value":"3735928559"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-hex1.toml000066400000000000000000000000221413547640500267360ustar00rootroot00000000000000hex1 = 0xDEADBEEF tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-hex2.json000066400000000000000000000000641413547640500267430ustar00rootroot00000000000000{"hex2": {"type":"integer","value":"3735928559"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-hex2.toml000066400000000000000000000000221413547640500267370ustar00rootroot00000000000000hex2 = 0xdeadbeef tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-hex3.json000066400000000000000000000000641413547640500267440ustar00rootroot00000000000000{"hex3": {"type":"integer","value":"3735928559"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-hex3.toml000066400000000000000000000000231413547640500267410ustar00rootroot00000000000000hex3 = 0xdead_beef tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-max.json000066400000000000000000000000741413547640500266630ustar00rootroot00000000000000{"max": {"type":"integer","value":"9223372036854775807"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-max.toml000066400000000000000000000000361413547640500266630ustar00rootroot00000000000000max=9_223_372_036_854_775_807 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-min.json000066400000000000000000000000751413547640500266620ustar00rootroot00000000000000{"min": {"type":"integer","value":"-9223372036854775808"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-min.toml000066400000000000000000000000371413547640500266620ustar00rootroot00000000000000min=-9_223_372_036_854_775_808 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-oct1.json000066400000000000000000000000601413547640500267370ustar00rootroot00000000000000{"oct1": {"type":"integer","value":"342391"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-oct1.toml000066400000000000000000000000221413547640500267370ustar00rootroot00000000000000oct1 = 0o01234567 tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-oct2.json000066400000000000000000000000551413547640500267440ustar00rootroot00000000000000{"oct2": {"type":"integer","value":"493"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/integer/spec-int-oct2.toml000066400000000000000000000000601413547640500267420ustar00rootroot00000000000000oct2 = 0o755 # useful for Unix file permissions tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/000077500000000000000000000000001413547640500237275ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-case-sensitive.json000066400000000000000000000001301413547640500304660ustar00rootroot00000000000000{"abc": {"type":"integer","value":"123"}, "ABC": {"type":"integer","value":"456"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-case-sensitive.toml000066400000000000000000000000561413547640500304770ustar00rootroot00000000000000# TOML is case sensitive. abc = 123 ABC = 456 tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-dotted-keys-1.json000066400000000000000000000003461413547640500301470ustar00rootroot00000000000000{"name": {"type":"string","value":"Orange"}, "physical": {"color": {"type":"string","value":"orange"}, "shape": {"type":"string","value":"round"}}, "site": {"google.com": {"type":"boolean","value":"true"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-dotted-keys-1.toml000066400000000000000000000001341413547640500301440ustar00rootroot00000000000000name = "Orange" physical.color = "orange" physical.shape = "round" site."google.com" = true tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-dotted-keys-2.json000066400000000000000000000000641413547640500301450ustar00rootroot00000000000000{"a": {"b": {"type":"integer","value":"23"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-dotted-keys-2.toml000066400000000000000000000000151413547640500301430ustar00rootroot00000000000000a . b = 23 tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-dotted-keys-3.json000066400000000000000000000000641413547640500301460ustar00rootroot00000000000000{"a": {"b": {"type":"integer","value":"23"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-dotted-keys-3.toml000066400000000000000000000000161413547640500301450ustar00rootroot00000000000000a . b = 23 tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-empty-key-name-1.json000066400000000000000000000000521413547640500305470ustar00rootroot00000000000000{"": {"type":"string","value":"blank"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-empty-key-name-1.toml000066400000000000000000000000511413547640500305500ustar00rootroot00000000000000"" = "blank" # VALID but discouraged tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-empty-key-name-2.json000066400000000000000000000000521413547640500305500ustar00rootroot00000000000000{"": {"type":"string","value":"blank"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-empty-key-name-2.toml000066400000000000000000000000511413547640500305510ustar00rootroot00000000000000'' = "blank" # VALID but discouraged tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-1.json000066400000000000000000000000551413547640500305430ustar00rootroot00000000000000{"key": {"type":"string","value":"value"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-1.toml000066400000000000000000000000161413547640500305420ustar00rootroot00000000000000key = "value" tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-2.json000066400000000000000000000000621413547640500305420ustar00rootroot00000000000000{"bare_key": {"type":"string","value":"value"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-2.toml000066400000000000000000000000231413547640500305410ustar00rootroot00000000000000bare_key = "value" tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-3.json000066400000000000000000000000621413547640500305430ustar00rootroot00000000000000{"bare-key": {"type":"string","value":"value"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-3.toml000066400000000000000000000000231413547640500305420ustar00rootroot00000000000000bare-key = "value" tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-4.json000066400000000000000000000000561413547640500305470ustar00rootroot00000000000000{"1234": {"type":"string","value":"value"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-4.toml000066400000000000000000000000171413547640500305460ustar00rootroot000000000000001234 = "value" tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-5.json000066400000000000000000000000561413547640500305500ustar00rootroot00000000000000{"1234": {"type":"string","value":"value"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-5.toml000066400000000000000000000000151413547640500305450ustar00rootroot000000000000001234="value" tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-6.json000066400000000000000000000000501413547640500305430ustar00rootroot00000000000000{"-": {"type":"integer","value":"1"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-6.toml000066400000000000000000000000041413547640500305440ustar00rootroot00000000000000-=1 tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-7.json000066400000000000000000000000501413547640500305440ustar00rootroot00000000000000{"_": {"type":"integer","value":"1"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-7.toml000066400000000000000000000000041413547640500305450ustar00rootroot00000000000000_=1 tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-8.json000066400000000000000000000000601413547640500305460ustar00rootroot00000000000000{"-_-_-_-_-": {"type":"integer","value":"1"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-8.toml000066400000000000000000000000141413547640500305470ustar00rootroot00000000000000-_-_-_-_-=1 tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-9.json000066400000000000000000000000671413547640500305560ustar00rootroot00000000000000{"3": {"14159": {"type":"string","value":"pi"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-key-value-pair-9.toml000066400000000000000000000000171413547640500305530ustar00rootroot000000000000003.14159 = "pi" tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-newline-1.json000066400000000000000000000001301413547640500273430ustar00rootroot00000000000000{"abc": {"type":"integer","value":"123"}, "def": {"type":"integer","value":"456"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-newline-1.toml000066400000000000000000000000241413547640500273470ustar00rootroot00000000000000abc = 123 def = 456 tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-newline-2.json000066400000000000000000000001301413547640500273440ustar00rootroot00000000000000{"abc": {"type":"integer","value":"123"}, "def": {"type":"integer","value":"456"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-newline-2.toml000066400000000000000000000000241413547640500273500ustar00rootroot00000000000000abc = 123 def = 456 tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-newline-3.json000066400000000000000000000002041413547640500273470ustar00rootroot00000000000000{"abc": {"type":"integer","value":"123"}, "def": {"type":"integer","value":"456"}, "ghi": {"type":"integer","value":"789"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-newline-3.toml000066400000000000000000000000361413547640500273540ustar00rootroot00000000000000abc = 123 def = 456 ghi = 789 tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-quoted-basic-keys-1.json000066400000000000000000000000601413547640500312350ustar00rootroot00000000000000{"ʎǝʞ": {"type":"string","value":"value"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-quoted-basic-keys-1.toml000066400000000000000000000000231413547640500312360ustar00rootroot00000000000000"ʎǝʞ" = "value" tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-quoted-literal-keys-1.json000066400000000000000000000000721413547640500316130ustar00rootroot00000000000000{"quoted \"value\"": {"type":"string","value":"value"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/key-value/spec-quoted-literal-keys-1.toml000066400000000000000000000000331413547640500316120ustar00rootroot00000000000000'quoted "value"' = "value" tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/000077500000000000000000000000001413547640500224265ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-array-inline-1000.json000066400000000000000000001201631413547640500266730ustar00rootroot00000000000000{"key": {"type":"array","value":[ {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"abcdefg"}, {"type":"string","value":"end"}]}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-array-inline-1000.toml000066400000000000000000000313321413547640500266740ustar00rootroot00000000000000key = [ "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "abcdefg", "end"] tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-array-inline-nested-1000.toml000066400000000000000000000037321413547640500301570ustar00rootroot00000000000000key = [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-key-literal-40kb.json000066400000000000000000001161541413547640500267100ustar00rootroot00000000000000{"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in.": {"type":"string","value":"long"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-key-literal-40kb.toml000066400000000000000000001161171413547640500267110ustar00rootroot00000000000000'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in.' = 'long' tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-key-string-40kb.json000066400000000000000000001161541413547640500265620ustar00rootroot00000000000000{"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in.": {"type":"string","value":"long"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-key-string-40kb.toml000066400000000000000000001161171413547640500265630ustar00rootroot00000000000000"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in." = "long" tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-scalar-literal-40kb.json000066400000000000000000001161541413547640500273650ustar00rootroot00000000000000{"long": {"type":"string","value":"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-scalar-literal-40kb.toml000066400000000000000000001161151413547640500273640ustar00rootroot00000000000000long = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in.' tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-scalar-literal-multiline-40kb.json000066400000000000000000001163161413547640500313650ustar00rootroot00000000000000{"long": {"type":"string","value":"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra.\n\nEros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium.\n\nBlandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim.\n\nNisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor.\n\nCras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed.\n\nTellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna.\n\nVarius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed.\n\nIn fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id.\n\nAt urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed.\n\nPlacerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel.\n\nPharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc.\n\nEt malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci.\n\nCongue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet.\n\nIn metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus.\n\nTincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id.\n\nSollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse.\n\nAugue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet.\n\nMi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet.\n\nAdipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna.\n\nMassa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit.\n\nEst ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id.\n\nRisus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris.\n\nEnim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum.\n\nNullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel.\n\nAliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam.\n\nGravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus.\n\nViverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia.\n\nFeugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis.\n\nLaoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim.\n\nEnim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis.\n\nFaucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras.\n\nNulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa.\n\nEgestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus.\n\nTempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in.\n\nMorbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa.\n\nLacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor.\n\nAmet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices.\n\nEu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi.\n\nLacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci.\n\nEt tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in.\n\nFaucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis.\n\nTincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor.\n\nIn vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at.\n\nMaecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit.\n\nSit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris.\n\nScelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet.\n\nMi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at.\n\nLectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus.\n\nSemper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi.\n\nNascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-scalar-literal-multiline-40kb.toml000066400000000000000000001161211413547640500313610ustar00rootroot00000000000000long = """Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in.""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-scalar-string-40kb.json000066400000000000000000001161541413547640500272370ustar00rootroot00000000000000{"long": {"type":"string","value":"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-scalar-string-40kb.toml000066400000000000000000001161151413547640500272360ustar00rootroot00000000000000long = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in." tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-scalar-string-multiline-40kb.json000066400000000000000000001163161413547640500312370ustar00rootroot00000000000000{"long": {"type":"string","value":"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra.\n\nEros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium.\n\nBlandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim.\n\nNisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor.\n\nCras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed.\n\nTellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna.\n\nVarius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed.\n\nIn fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id.\n\nAt urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed.\n\nPlacerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel.\n\nPharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc.\n\nEt malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci.\n\nCongue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet.\n\nIn metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus.\n\nTincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id.\n\nSollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse.\n\nAugue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet.\n\nMi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet.\n\nAdipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna.\n\nMassa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit.\n\nEst ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id.\n\nRisus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris.\n\nEnim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum.\n\nNullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel.\n\nAliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam.\n\nGravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus.\n\nViverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia.\n\nFeugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis.\n\nLaoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim.\n\nEnim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis.\n\nFaucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras.\n\nNulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa.\n\nEgestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus.\n\nTempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in.\n\nMorbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa.\n\nLacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor.\n\nAmet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices.\n\nEu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi.\n\nLacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci.\n\nEt tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in.\n\nFaucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis.\n\nTincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor.\n\nIn vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at.\n\nMaecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit.\n\nSit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris.\n\nScelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet.\n\nMi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at.\n\nLectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus.\n\nSemper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi.\n\nNascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-scalar-string-multiline-40kb.toml000066400000000000000000001161211413547640500312330ustar00rootroot00000000000000long = '''Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Amet consectetur adipiscing elit ut. Nulla facilisi etiam dignissim diam quis enim lobortis. Curabitur vitae nunc sed velit dignissim sodales ut eu. Fames ac turpis egestas sed tempus urna et. Facilisi cras fermentum odio eu feugiat pretium. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Est lorem ipsum dolor sit amet consectetur adipiscing elit. Vel quam elementum pulvinar etiam non quam lacus. Pharetra et ultrices neque ornare aenean euismod. Nisl nisi scelerisque eu ultrices. Eget dolor morbi non arcu risus. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Faucibus nisl tincidunt eget nullam. Nisl pretium fusce id velit ut tortor pretium viverra suspendisse. Mauris ultrices eros in cursus. Donec ac odio tempor orci dapibus ultrices in iaculis. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Aenean euismod elementum nisi quis eleifend quam. Magnis dis parturient montes nascetur ridiculus mus. Eu tincidunt tortor aliquam nulla facilisi cras. Tristique senectus et netus et malesuada fames. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Ac turpis egestas sed tempus urna et. Amet mauris commodo quis imperdiet massa tincidunt. Urna nunc id cursus metus aliquam eleifend mi. In nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Neque aliquam vestibulum morbi blandit cursus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Blandit cursus risus at ultrices mi tempus. Turpis massa sed elementum tempus egestas sed sed. Dictum varius duis at consectetur lorem. Commodo ullamcorper a lacus vestibulum sed arcu non. Dolor magna eget est lorem. Tincidunt arcu non sodales neque sodales ut etiam sit amet. Sit amet risus nullam eget felis eget nunc lobortis. Risus in hendrerit gravida rutrum quisque non tellus orci. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Morbi tristique senectus et netus et malesuada. In aliquam sem fringilla ut morbi tincidunt. Ornare aenean euismod elementum nisi quis eleifend quam. Sed id semper risus in hendrerit gravida rutrum quisque. Lorem ipsum dolor sit amet consectetur adipiscing elit. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Faucibus purus in massa tempor nec feugiat nisl. Vehicula ipsum a arcu cursus vitae congue. Facilisi cras fermentum odio eu feugiat pretium nibh. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ultrices dui sapien eget mi proin sed libero enim. Nisi est sit amet facilisis magna etiam tempor. Posuere ac ut consequat semper viverra nam. Dis parturient montes nascetur ridiculus mus mauris vitae. Nec sagittis aliquam malesuada bibendum. Mattis pellentesque id nibh tortor id aliquet lectus. Vitae congue eu consequat ac felis donec et. Cras sed felis eget velit aliquet sagittis id consectetur purus. Pellentesque elit ullamcorper dignissim cras tincidunt. Pellentesque dignissim enim sit amet venenatis urna. A cras semper auctor neque vitae tempus. Amet massa vitae tortor condimentum lacinia quis vel eros donec. Tempor commodo ullamcorper a lacus. Nibh tellus molestie nunc non blandit massa enim nec dui. Viverra orci sagittis eu volutpat odio facilisis mauris sit. Sed augue lacus viverra vitae. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Tellus rutrum tellus pellentesque eu tincidunt tortor. Cras semper auctor neque vitae tempus quam pellentesque nec. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Tristique magna sit amet purus gravida quis blandit turpis. Viverra ipsum nunc aliquet bibendum. Arcu bibendum at varius vel. Amet mattis vulputate enim nulla. Vulputate enim nulla aliquet porttitor. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Morbi tristique senectus et netus et malesuada fames ac. Faucibus et molestie ac feugiat sed. Tellus elementum sagittis vitae et leo duis. Id aliquet lectus proin nibh. Ornare arcu dui vivamus arcu. Morbi tincidunt augue interdum velit euismod in pellentesque massa placerat. Quis eleifend quam adipiscing vitae. Tristique senectus et netus et malesuada fames ac turpis. Pharetra convallis posuere morbi leo. Ornare arcu odio ut sem nulla pharetra diam sit. Morbi tristique senectus et netus et. Dictum non consectetur a erat nam at lectus urna. Varius vel pharetra vel turpis. Mi ipsum faucibus vitae aliquet. Tellus in metus vulputate eu scelerisque felis imperdiet proin. In est ante in nibh mauris cursus mattis. Massa ultricies mi quis hendrerit dolor magna eget. Fermentum leo vel orci porta. Elit ut aliquam purus sit amet luctus venenatis lectus. Eget aliquet nibh praesent tristique magna sit amet. Arcu non odio euismod lacinia at quis. Montes nascetur ridiculus mus mauris vitae ultricies. Tempus quam pellentesque nec nam aliquam sem et tortor. Morbi leo urna molestie at elementum eu facilisis sed. In fermentum posuere urna nec tincidunt. Neque aliquam vestibulum morbi blandit cursus risus. Vulputate dignissim suspendisse in est ante in nibh mauris cursus. Lorem ipsum dolor sit amet consectetur adipiscing. Orci eu lobortis elementum nibh tellus molestie nunc non. Enim diam vulputate ut pharetra sit amet aliquam. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. A lacus vestibulum sed arcu non odio. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Diam vel quam elementum pulvinar etiam non quam. Viverra justo nec ultrices dui. Eu volutpat odio facilisis mauris sit amet massa. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Ac felis donec et odio pellentesque. Nisl vel pretium lectus quam id leo in. Ultricies lacus sed turpis tincidunt id. At urna condimentum mattis pellentesque id nibh tortor id. Sem nulla pharetra diam sit amet nisl suscipit. Neque viverra justo nec ultrices. Arcu cursus euismod quis viverra nibh cras pulvinar. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Id diam vel quam elementum pulvinar etiam non. Elementum pulvinar etiam non quam lacus suspendisse faucibus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Sed faucibus turpis in eu mi bibendum neque egestas congue. Consectetur libero id faucibus nisl tincidunt eget nullam. At volutpat diam ut venenatis tellus in metus vulputate eu. Condimentum lacinia quis vel eros donec ac odio. Sit amet porttitor eget dolor morbi non arcu risus quis. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Metus dictum at tempor commodo ullamcorper. At ultrices mi tempus imperdiet nulla. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Lobortis elementum nibh tellus molestie nunc non. Placerat in egestas erat imperdiet sed. Placerat in egestas erat imperdiet sed euismod. Lobortis feugiat vivamus at augue eget arcu dictum varius. Ut sem nulla pharetra diam sit amet. Et tortor at risus viverra adipiscing at in. Tempor nec feugiat nisl pretium. Cursus euismod quis viverra nibh. Eget mi proin sed libero enim sed. Aliquam id diam maecenas ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Gravida quis blandit turpis cursus in hac habitasse platea dictumst. Sed tempus urna et pharetra pharetra massa massa. Dolor purus non enim praesent elementum facilisis leo vel. Pharetra vel turpis nunc eget. Quam pellentesque nec nam aliquam sem et tortor consequat id. Orci eu lobortis elementum nibh tellus molestie nunc non. Porttitor leo a diam sollicitudin tempor id. Tincidunt ornare massa eget egestas purus viverra accumsan in nisl. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Elit ut aliquam purus sit amet luctus venenatis lectus. Velit egestas dui id ornare arcu odio ut sem nulla. Lacus viverra vitae congue eu consequat ac felis donec. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Lorem dolor sed viverra ipsum. Blandit libero volutpat sed cras ornare arcu. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Viverra maecenas accumsan lacus vel. Enim neque volutpat ac tincidunt. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc. Et malesuada fames ac turpis egestas integer. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Est placerat in egestas erat imperdiet sed. Non arcu risus quis varius quam quisque. Lorem mollis aliquam ut porttitor leo a. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus. Fermentum iaculis eu non diam. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Varius vel pharetra vel turpis nunc eget lorem dolor. Rhoncus mattis rhoncus urna neque viverra. Hac habitasse platea dictumst quisque sagittis purus sit. At quis risus sed vulputate odio ut enim. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Rutrum quisque non tellus orci ac auctor. Iaculis eu non diam phasellus vestibulum lorem sed. Ut sem nulla pharetra diam sit amet nisl suscipit. Risus at ultrices mi tempus. Vitae tortor condimentum lacinia quis vel eros donec. Sed tempus urna et pharetra. Posuere sollicitudin aliquam ultrices sagittis orci. Congue quisque egestas diam in arcu. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Pellentesque habitant morbi tristique senectus et netus et. Id interdum velit laoreet id. Fusce ut placerat orci nulla pellentesque dignissim. Pretium nibh ipsum consequat nisl vel pretium. Etiam erat velit scelerisque in dictum non consectetur a. Turpis in eu mi bibendum neque egestas congue quisque egestas. Pulvinar sapien et ligula ullamcorper malesuada. Ultricies tristique nulla aliquet enim tortor at. Suspendisse interdum consectetur libero id faucibus. Lorem sed risus ultricies tristique nulla aliquet. Tristique senectus et netus et malesuada fames. Eu augue ut lectus arcu bibendum at varius vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Aliquet eget sit amet tellus cras adipiscing. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Ornare massa eget egestas purus viverra accumsan in nisl. Justo laoreet sit amet cursus sit amet. In metus vulputate eu scelerisque felis imperdiet proin. At erat pellentesque adipiscing commodo elit at. Ipsum suspendisse ultrices gravida dictum fusce. Lectus sit amet est placerat in egestas erat. Aliquam ultrices sagittis orci a. Sagittis id consectetur purus ut faucibus pulvinar elementum. Ornare arcu odio ut sem nulla pharetra diam. Sit amet purus gravida quis blandit turpis cursus. Duis ultricies lacus sed turpis tincidunt. Malesuada fames ac turpis egestas sed tempus urna et. Viverra ipsum nunc aliquet bibendum enim facilisis. Et pharetra pharetra massa massa ultricies mi quis. Eget duis at tellus at urna condimentum mattis. Euismod in pellentesque massa placerat. Enim nunc faucibus a pellentesque sit amet porttitor. Dolor sed viverra ipsum nunc aliquet. Donec enim diam vulputate ut pharetra sit amet. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Erat pellentesque adipiscing commodo elit at imperdiet. Nisl purus in mollis nunc sed id semper risus. Tincidunt augue interdum velit euismod in pellentesque massa. Facilisis magna etiam tempor orci. Mauris in aliquam sem fringilla ut. Gravida dictum fusce ut placerat orci. Sed risus ultricies tristique nulla. Odio morbi quis commodo odio. Feugiat in ante metus dictum at tempor commodo ullamcorper. Porta non pulvinar neque laoreet suspendisse interdum. Etiam tempor orci eu lobortis elementum. Fusce ut placerat orci nulla pellentesque dignissim. Ornare lectus sit amet est placerat in egestas erat. Quis vel eros donec ac. Elementum pulvinar etiam non quam lacus. Sit amet tellus cras adipiscing enim eu turpis. Amet tellus cras adipiscing enim eu. Sed faucibus turpis in eu mi bibendum. Lectus proin nibh nisl condimentum id. Sollicitudin nibh sit amet commodo nulla. Sed tempus urna et pharetra pharetra massa massa. Magna eget est lorem ipsum. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Fermentum dui faucibus in ornare quam viverra orci sagittis eu. Dignissim convallis aenean et tortor. Ut faucibus pulvinar elementum integer enim neque. Nibh cras pulvinar mattis nunc sed. Pellentesque sit amet porttitor eget dolor morbi. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Quis risus sed vulputate odio ut enim blandit volutpat. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. In vitae turpis massa sed elementum tempus egestas sed sed. Urna id volutpat lacus laoreet non. Egestas pretium aenean pharetra magna ac placerat. Amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus. Donec et odio pellentesque diam volutpat commodo sed. Etiam non quam lacus suspendisse. Augue neque gravida in fermentum et sollicitudin ac orci. Eu feugiat pretium nibh ipsum. Nam at lectus urna duis convallis convallis tellus id. Egestas integer eget aliquet nibh. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Urna condimentum mattis pellentesque id nibh tortor id. In egestas erat imperdiet sed euismod. Ut sem viverra aliquet eget sit amet tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Volutpat odio facilisis mauris sit amet. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Nec feugiat in fermentum posuere urna nec. Ut venenatis tellus in metus vulputate eu. Vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Eu scelerisque felis imperdiet proin. Vitae et leo duis ut diam quam nulla. Ut venenatis tellus in metus vulputate eu scelerisque. Tincidunt dui ut ornare lectus sit amet. Adipiscing diam donec adipiscing tristique risus. Turpis nunc eget lorem dolor sed viverra ipsum nunc aliquet. Non sodales neque sodales ut. Massa placerat duis ultricies lacus sed turpis tincidunt. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. Adipiscing vitae proin sagittis nisl. Vitae aliquet nec ullamcorper sit. Potenti nullam ac tortor vitae purus. Ultricies lacus sed turpis tincidunt id. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Semper eget duis at tellus at urna condimentum mattis pellentesque. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Dictum fusce ut placerat orci nulla pellentesque dignissim. Amet luctus venenatis lectus magna fringilla urna. Quam quisque id diam vel quam elementum pulvinar. At tempor commodo ullamcorper a. Magna etiam tempor orci eu lobortis. Suspendisse ultrices gravida dictum fusce. Massa ultricies mi quis hendrerit dolor magna. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Aliquet enim tortor at auctor urna nunc id. Semper feugiat nibh sed pulvinar proin gravida. Porttitor rhoncus dolor purus non enim. Metus aliquam eleifend mi in nulla. Lectus arcu bibendum at varius vel pharetra. Sed vulputate odio ut enim blandit volutpat. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Donec et odio pellentesque diam volutpat commodo. Id ornare arcu odio ut sem nulla pharetra diam sit. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Sagittis vitae et leo duis ut diam quam nulla. Elementum nisi quis eleifend quam. Congue mauris rhoncus aenean vel elit. Adipiscing elit duis tristique sollicitudin nibh sit. Egestas egestas fringilla phasellus faucibus scelerisque. Morbi tincidunt augue interdum velit euismod. Massa sed elementum tempus egestas sed sed. Id leo in vitae turpis massa sed elementum tempus egestas. In pellentesque massa placerat duis ultricies lacus sed turpis. Vitae proin sagittis nisl rhoncus mattis rhoncus. Enim tortor at auctor urna nunc id. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. Aliquam ut porttitor leo a diam sollicitudin tempor id. Pellentesque elit eget gravida cum sociis natoque. Molestie at elementum eu facilisis sed odio morbi quis. Tristique senectus et netus et malesuada fames ac turpis. Proin libero nunc consequat interdum varius sit amet mattis. Pellentesque id nibh tortor id. Risus sed vulputate odio ut enim blandit. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Morbi tincidunt augue interdum velit euismod in pellentesque. Pharetra pharetra massa massa ultricies mi quis hendrerit. Nunc aliquet bibendum enim facilisis gravida neque. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Risus quis varius quam quisque id diam vel. Et ultrices neque ornare aenean. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Nibh ipsum consequat nisl vel. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Euismod nisi porta lorem mollis aliquam. Enim ut tellus elementum sagittis. Rhoncus mattis rhoncus urna neque. Malesuada fames ac turpis egestas. Cursus in hac habitasse platea dictumst quisque sagittis. Sit amet aliquam id diam maecenas ultricies mi eget mauris. Enim sit amet venenatis urna cursus eget nunc. Fermentum odio eu feugiat pretium nibh ipsum consequat. Eu scelerisque felis imperdiet proin. Nullam non nisi est sit amet facilisis magna etiam tempor. In mollis nunc sed id semper risus in hendrerit. Sollicitudin nibh sit amet commodo nulla facilisi nullam. Sit amet nisl purus in mollis nunc sed id. Nam libero justo laoreet sit amet cursus sit amet dictum. Condimentum id venenatis a condimentum vitae sapien pellentesque. Porta nibh venenatis cras sed felis. Lectus nulla at volutpat diam ut venenatis tellus in. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Leo vel fringilla est ullamcorper eget. Sodales ut etiam sit amet nisl purus in mollis nunc. Euismod nisi porta lorem mollis aliquam. Ornare arcu odio ut sem nulla. Sed felis eget velit aliquet sagittis id consectetur. Pellentesque nec nam aliquam sem et tortor consequat id. Enim nec dui nunc mattis enim ut tellus elementum. Nullam non nisi est sit amet facilisis magna. Rutrum quisque non tellus orci ac auctor augue. Nunc vel risus commodo viverra maecenas accumsan lacus. Viverra vitae congue eu consequat. Sollicitudin nibh sit amet commodo nulla. Amet volutpat consequat mauris nunc congue nisi. Maecenas pharetra convallis posuere morbi leo urna molestie at. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Adipiscing diam donec adipiscing tristique risus. Elementum curabitur vitae nunc sed velit dignissim sodales ut. Eleifend donec pretium vulputate sapien nec. Commodo quis imperdiet massa tincidunt nunc pulvinar. Proin libero nunc consequat interdum varius sit amet mattis. Facilisis gravida neque convallis a cras semper auctor neque vitae. Quisque egestas diam in arcu cursus. Nunc eget lorem dolor sed viverra ipsum. Mauris sit amet massa vitae tortor condimentum lacinia quis vel. Aliquam sem et tortor consequat id porta nibh venenatis cras. Nunc sed id semper risus in. Enim sed faucibus turpis in eu mi bibendum neque. Molestie nunc non blandit massa enim. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ac turpis egestas maecenas pharetra. In nulla posuere sollicitudin aliquam. Justo nec ultrices dui sapien eget mi proin sed libero. In ornare quam viverra orci sagittis eu. Proin nibh nisl condimentum id venenatis. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Quis risus sed vulputate odio ut enim blandit. Risus feugiat in ante metus dictum at tempor commodo. Sodales neque sodales ut etiam. Nunc id cursus metus aliquam. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim. Augue ut lectus arcu bibendum at. Quis varius quam quisque id diam vel quam. Egestas congue quisque egestas diam in arcu. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Enim lobortis scelerisque fermentum dui faucibus in. In tellus integer feugiat scelerisque varius morbi enim nunc. Mattis molestie a iaculis at erat pellentesque. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl rhoncus mattis rhoncus urna neque. Ac auctor augue mauris augue neque gravida in fermentum et. Sodales ut eu sem integer vitae justo eget. Sed egestas egestas fringilla phasellus. Viverra adipiscing at in tellus integer feugiat scelerisque varius. Purus gravida quis blandit turpis. Id porta nibh venenatis cras sed. Mattis vulputate enim nulla aliquet porttitor lacus. Augue eget arcu dictum varius duis at consectetur lorem donec. Nulla at volutpat diam ut venenatis tellus in metus. Aliquam etiam erat velit scelerisque in dictum non consectetur. Turpis cursus in hac habitasse platea dictumst. Consequat mauris nunc congue nisi vitae suscipit tellus. Volutpat maecenas volutpat blandit aliquam etiam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Velit egestas dui id ornare arcu. Non consectetur a erat nam at. Orci sagittis eu volutpat odio facilisis mauris sit amet. Dui id ornare arcu odio. Sed arcu non odio euismod lacinia. Feugiat in ante metus dictum. Gravida arcu ac tortor dignissim convallis. Egestas sed tempus urna et pharetra pharetra massa massa. Nulla facilisi nullam vehicula ipsum a arcu. Ipsum a arcu cursus vitae congue mauris. Porttitor rhoncus dolor purus non. Magna sit amet purus gravida quis blandit. Sapien eget mi proin sed libero enim sed faucibus turpis. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Pharetra massa massa ultricies mi quis hendrerit. Sapien nec sagittis aliquam malesuada bibendum. Nunc scelerisque viverra mauris in aliquam sem fringilla ut. Dolor magna eget est lorem ipsum dolor. Amet commodo nulla facilisi nullam. Pellentesque elit ullamcorper dignissim cras. Id porta nibh venenatis cras sed felis eget. Nam at lectus urna duis. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Sit amet luctus venenatis lectus magna fringilla. Duis ultricies lacus sed turpis tincidunt id. Sed velit dignissim sodales ut eu. Ut tortor pretium viverra suspendisse potenti nullam. Iaculis at erat pellentesque adipiscing. Ipsum nunc aliquet bibendum enim facilisis gravida neque. Nulla aliquet enim tortor at auctor urna nunc id cursus. Amet cursus sit amet dictum sit amet justo donec enim. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Nulla facilisi etiam dignissim diam quis enim. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat. Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel fringilla est ullamcorper eget nulla. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Arcu cursus vitae congue mauris rhoncus aenean vel elit. Augue eget arcu dictum varius duis. Tristique et egestas quis ipsum. Quis varius quam quisque id. Varius sit amet mattis vulputate. Mattis molestie a iaculis at erat pellentesque. Libero justo laoreet sit amet cursus. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Ut eu sem integer vitae justo eget. Fames ac turpis egestas sed. Suspendisse in est ante in nibh mauris cursus mattis. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Neque vitae tempus quam pellentesque nec nam aliquam. Lobortis elementum nibh tellus molestie nunc non. Lacus vel facilisis volutpat est velit egestas dui. Justo laoreet sit amet cursus sit amet dictum sit amet. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Cursus metus aliquam eleifend mi in nulla posuere. Nibh mauris cursus mattis molestie a. Dignissim diam quis enim lobortis scelerisque fermentum. A scelerisque purus semper eget duis at tellus. Lacus sed turpis tincidunt id aliquet risus feugiat in. Non tellus orci ac auctor. Ultrices in iaculis nunc sed augue lacus. Tincidunt tortor aliquam nulla facilisi cras. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue. Eget magna fermentum iaculis eu non diam phasellus. Pharetra massa massa ultricies mi quis. Eget mauris pharetra et ultrices neque ornare. Aliquam faucibus purus in massa. Facilisi morbi tempus iaculis urna id volutpat lacus. Accumsan lacus vel facilisis volutpat. Curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum. Elementum nibh tellus molestie nunc non blandit massa enim. Libero id faucibus nisl tincidunt. Bibendum ut tristique et egestas. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Augue interdum velit euismod in pellentesque. Adipiscing diam donec adipiscing tristique risus nec feugiat. Fringilla ut morbi tincidunt augue interdum velit. Vitae et leo duis ut diam quam nulla porttitor massa. Egestas integer eget aliquet nibh praesent tristique. Posuere sollicitudin aliquam ultrices sagittis orci a. Nisi est sit amet facilisis. Risus quis varius quam quisque id diam. Faucibus turpis in eu mi. Et molestie ac feugiat sed lectus vestibulum. Porttitor lacus luctus accumsan tortor posuere ac. Platea dictumst vestibulum rhoncus est pellentesque. Tortor pretium viverra suspendisse potenti nullam ac tortor. Enim praesent elementum facilisis leo vel fringilla est. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum lectus. Nulla pharetra diam sit amet nisl suscipit. Mauris nunc congue nisi vitae suscipit tellus mauris a diam. Faucibus in ornare quam viverra orci sagittis eu volutpat. Volutpat consequat mauris nunc congue nisi vitae. Dui nunc mattis enim ut tellus. Adipiscing elit ut aliquam purus sit amet luctus. Tempus egestas sed sed risus. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Massa ultricies mi quis hendrerit dolor magna eget. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Ut eu sem integer vitae justo eget magna fermentum. Ornare quam viverra orci sagittis. Eget dolor morbi non arcu risus quis varius quam. Tincidunt praesent semper feugiat nibh sed pulvinar. Sit amet justo donec enim diam vulputate. Dui faucibus in ornare quam viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Turpis egestas sed tempus urna et. Pretium quam vulputate dignissim suspendisse in est ante in. Morbi quis commodo odio aenean sed adipiscing diam donec. Nunc mattis enim ut tellus elementum sagittis vitae et. Diam vel quam elementum pulvinar etiam non quam. Convallis posuere morbi leo urna molestie at elementum eu. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Quis varius quam quisque id diam vel quam elementum. Dui accumsan sit amet nulla. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Viverra ipsum nunc aliquet bibendum enim facilisis. Porta lorem mollis aliquam ut. Velit ut tortor pretium viverra suspendisse potenti. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Pharetra magna ac placerat vestibulum. Mauris ultrices eros in cursus turpis massa. Lacus vestibulum sed arcu non odio euismod lacinia at. Dapibus ultrices in iaculis nunc sed. Cras adipiscing enim eu turpis egestas. Eget arcu dictum varius duis at consectetur. Consequat id porta nibh venenatis cras sed felis eget velit. Integer enim neque volutpat ac tincidunt vitae. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Ut morbi tincidunt augue interdum velit euismod. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Nisl nunc mi ipsum faucibus vitae. Proin fermentum leo vel orci porta. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Et leo duis ut diam quam. Eros in cursus turpis massa tincidunt. Volutpat est velit egestas dui id. Commodo odio aenean sed adipiscing diam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Magna fringilla urna porttitor rhoncus dolor. Amet consectetur adipiscing elit ut aliquam purus sit amet. Vitae justo eget magna fermentum iaculis eu non diam. Hendrerit dolor magna eget est. Ac placerat vestibulum lectus mauris ultrices eros in cursus turpis. Egestas diam in arcu cursus. At varius vel pharetra vel turpis nunc. Lacus vel facilisis volutpat est velit. Ut ornare lectus sit amet est placerat in egestas. Quam adipiscing vitae proin sagittis nisl rhoncus. Dolor purus non enim praesent. Urna condimentum mattis pellentesque id. Magnis dis parturient montes nascetur ridiculus. Feugiat nisl pretium fusce id. Sed cras ornare arcu dui vivamus. Vitae turpis massa sed elementum tempus egestas sed sed. Ac feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Ac ut consequat semper viverra nam libero. Consectetur lorem donec massa sapien faucibus. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Eu turpis egestas pretium aenean pharetra. Nisl rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Pellentesque sit amet porttitor eget dolor morbi non arcu. Vitae justo eget magna fermentum iaculis. Quis auctor elit sed vulputate mi sit. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Semper auctor neque vitae tempus quam pellentesque nec nam. Rhoncus dolor purus non enim. Sed turpis tincidunt id aliquet risus feugiat. Sit amet justo donec enim diam vulputate ut pharetra sit. Risus pretium quam vulputate dignissim suspendisse in est ante in. Massa sapien faucibus et molestie ac feugiat. Id aliquet risus feugiat in ante metus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Lacus sed turpis tincidunt id aliquet risus feugiat in. Risus ultricies tristique nulla aliquet enim tortor. In ornare quam viverra orci sagittis eu volutpat. Netus et malesuada fames ac turpis egestas sed tempus urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Etiam erat velit scelerisque in dictum non. Cursus turpis massa tincidunt dui ut ornare lectus. Tristique sollicitudin nibh sit amet commodo nulla facilisi. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Aliquet eget sit amet tellus cras. Nullam ac tortor vitae purus faucibus ornare. Lacus viverra vitae congue eu consequat. Vulputate ut pharetra sit amet. Est ante in nibh mauris cursus mattis molestie a. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Et tortor at risus viverra. Sed libero enim sed faucibus turpis in eu. Id cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Risus viverra adipiscing at in. Imperdiet massa tincidunt nunc pulvinar sapien et. Nec feugiat in fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et. Morbi tristique senectus et netus et malesuada fames ac. At quis risus sed vulputate. Interdum velit laoreet id donec. Sapien pellentesque habitant morbi tristique. Pharetra vel turpis nunc eget lorem dolor sed viverra. In massa tempor nec feugiat nisl. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin. Mauris augue neque gravida in. Faucibus vitae aliquet nec ullamcorper sit amet risus. Id velit ut tortor pretium viverra suspendisse potenti. Leo integer malesuada nunc vel risus commodo viverra maecenas. Risus quis varius quam quisque id. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Vestibulum lectus mauris ultrices eros in cursus turpis. Fermentum posuere urna nec tincidunt. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Id ornare arcu odio ut. Facilisi nullam vehicula ipsum a arcu cursus vitae congue. Nulla pellentesque dignissim enim sit amet venenatis urna cursus eget. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. Sed cras ornare arcu dui vivamus arcu felis. Egestas diam in arcu cursus euismod quis. Tincidunt dui ut ornare lectus. Morbi tristique senectus et netus et. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Habitant morbi tristique senectus et netus et malesuada fames ac. Ut tristique et egestas quis. Mollis aliquam ut porttitor leo. Venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin. Sagittis eu volutpat odio facilisis mauris sit amet massa. Eu facilisis sed odio morbi. Nunc consequat interdum varius sit amet mattis. Velit dignissim sodales ut eu. Pellentesque eu tincidunt tortor aliquam. Porta lorem mollis aliquam ut porttitor. Rhoncus urna neque viverra justo nec ultrices. Viverra suspendisse potenti nullam ac tortor vitae purus. Fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nisl nisi scelerisque eu ultrices vitae auctor. In vitae turpis massa sed elementum tempus egestas. Cursus sit amet dictum sit amet justo donec enim. Vitae congue eu consequat ac felis donec et. Augue interdum velit euismod in pellentesque massa placerat. Enim ut sem viverra aliquet eget sit amet. Velit scelerisque in dictum non consectetur a erat. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Nunc faucibus a pellentesque sit amet porttitor eget. Tellus integer feugiat scelerisque varius morbi. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Adipiscing elit duis tristique sollicitudin. Adipiscing elit pellentesque habitant morbi tristique. Ac tincidunt vitae semper quis lectus nulla at. Maecenas sed enim ut sem viverra. Erat pellentesque adipiscing commodo elit at imperdiet. Dolor morbi non arcu risus quis varius quam quisque. Fringilla urna porttitor rhoncus dolor purus non enim praesent. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus a. Felis eget nunc lobortis mattis aliquam faucibus purus in. Fringilla phasellus faucibus scelerisque eleifend. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere. Risus ultricies tristique nulla aliquet. Lectus sit amet est placerat. Ac ut consequat semper viverra nam libero justo. Dapibus ultrices in iaculis nunc sed augue. Mattis ullamcorper velit sed ullamcorper. Eget nullam non nisi est. Vitae elementum curabitur vitae nunc sed velit. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Tempor nec feugiat nisl pretium fusce id velit ut. Nulla pellentesque dignissim enim sit amet venenatis. Sed tempus urna et pharetra pharetra. Congue quisque egestas diam in. Convallis posuere morbi leo urna. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Scelerisque felis imperdiet proin fermentum leo vel. Ut placerat orci nulla pellentesque dignissim enim sit amet. In cursus turpis massa tincidunt dui. Rutrum quisque non tellus orci ac auctor augue mauris augue. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Habitant morbi tristique senectus et netus et. Ridiculus mus mauris vitae ultricies leo. Vitae semper quis lectus nulla at volutpat diam. Purus faucibus ornare suspendisse sed nisi. Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Varius duis at consectetur lorem donec. Pulvinar pellentesque habitant morbi tristique senectus et netus et. A iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Mi ipsum faucibus vitae aliquet nec. Libero volutpat sed cras ornare arcu dui vivamus arcu. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Maecenas volutpat blandit aliquam etiam erat velit scelerisque. Cras adipiscing enim eu turpis. Nec tincidunt praesent semper feugiat nibh sed pulvinar. Justo laoreet sit amet cursus sit amet dictum sit. Velit scelerisque in dictum non consectetur a erat nam. Turpis tincidunt id aliquet risus feugiat in ante. Aliquet risus feugiat in ante metus dictum. Hac habitasse platea dictumst quisque sagittis purus sit. Et pharetra pharetra massa massa ultricies. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Venenatis urna cursus eget nunc scelerisque viverra mauris in. Integer quis auctor elit sed. In est ante in nibh mauris cursus mattis molestie. Scelerisque in dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Sit amet cursus sit amet. Nibh nisl condimentum id venenatis a condimentum. Purus ut faucibus pulvinar elementum integer enim. Pharetra sit amet aliquam id diam maecenas. Id cursus metus aliquam eleifend mi in nulla posuere. Lobortis mattis aliquam faucibus purus in massa tempor nec. Urna neque viverra justo nec ultrices dui sapien eget. Enim ut sem viverra aliquet eget sit amet. In eu mi bibendum neque egestas congue quisque egestas. Enim neque volutpat ac tincidunt. Orci ac auctor augue mauris augue neque gravida in fermentum. Velit aliquet sagittis id consectetur. Enim ut sem viverra aliquet eget sit amet tellus. Semper auctor neque vitae tempus quam pellentesque nec. Non blandit massa enim nec dui nunc. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu non odio euismod lacinia at quis risus. Dictum varius duis at consectetur lorem donec massa. Blandit massa enim nec dui. Nibh ipsum consequat nisl vel. Turpis in eu mi bibendum neque. Ut tristique et egestas quis. Ac odio tempor orci dapibus. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Integer feugiat scelerisque varius morbi enim. Libero volutpat sed cras ornare arcu dui. Odio aenean sed adipiscing diam. Et egestas quis ipsum suspendisse ultrices. Aliquet lectus proin nibh nisl condimentum. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Blandit massa enim nec dui. Tellus molestie nunc non blandit massa enim nec. Tortor vitae purus faucibus ornare suspendisse sed nisi. Nascetur ridiculus mus mauris vitae ultricies leo. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Diam maecenas ultricies mi eget. Duis tristique sollicitudin nibh sit amet commodo nulla. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Dictumst quisque sagittis purus sit amet. Viverra mauris in aliquam sem. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Condimentum mattis pellentesque id nibh tortor id. Non sodales neque sodales ut etiam sit amet. Ipsum consequat nisl vel pretium. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Fringilla est ullamcorper eget nulla facilisi etiam. Tellus elementum sagittis vitae et leo duis ut diam quam. Nisl vel pretium lectus quam id leo in.''' tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-table-inline-1000.json000066400000000000000000001315721413547640500266520ustar00rootroot00000000000000{"key":{ "key1":{"type":"string","value":"abcdefg"}, "key2":{"type":"string","value":"abcdefg"}, "key3":{"type":"string","value":"abcdefg"}, "key4":{"type":"string","value":"abcdefg"}, "key5":{"type":"string","value":"abcdefg"}, "key6":{"type":"string","value":"abcdefg"}, "key7":{"type":"string","value":"abcdefg"}, "key8":{"type":"string","value":"abcdefg"}, "key9":{"type":"string","value":"abcdefg"}, "key10":{"type":"string","value":"abcdefg"}, "key11":{"type":"string","value":"abcdefg"}, "key12":{"type":"string","value":"abcdefg"}, "key13":{"type":"string","value":"abcdefg"}, "key14":{"type":"string","value":"abcdefg"}, "key15":{"type":"string","value":"abcdefg"}, "key16":{"type":"string","value":"abcdefg"}, "key17":{"type":"string","value":"abcdefg"}, "key18":{"type":"string","value":"abcdefg"}, "key19":{"type":"string","value":"abcdefg"}, "key20":{"type":"string","value":"abcdefg"}, "key21":{"type":"string","value":"abcdefg"}, "key22":{"type":"string","value":"abcdefg"}, "key23":{"type":"string","value":"abcdefg"}, "key24":{"type":"string","value":"abcdefg"}, "key25":{"type":"string","value":"abcdefg"}, "key26":{"type":"string","value":"abcdefg"}, "key27":{"type":"string","value":"abcdefg"}, "key28":{"type":"string","value":"abcdefg"}, "key29":{"type":"string","value":"abcdefg"}, "key30":{"type":"string","value":"abcdefg"}, "key31":{"type":"string","value":"abcdefg"}, "key32":{"type":"string","value":"abcdefg"}, "key33":{"type":"string","value":"abcdefg"}, "key34":{"type":"string","value":"abcdefg"}, "key35":{"type":"string","value":"abcdefg"}, "key36":{"type":"string","value":"abcdefg"}, "key37":{"type":"string","value":"abcdefg"}, "key38":{"type":"string","value":"abcdefg"}, "key39":{"type":"string","value":"abcdefg"}, "key40":{"type":"string","value":"abcdefg"}, "key41":{"type":"string","value":"abcdefg"}, "key42":{"type":"string","value":"abcdefg"}, "key43":{"type":"string","value":"abcdefg"}, "key44":{"type":"string","value":"abcdefg"}, "key45":{"type":"string","value":"abcdefg"}, "key46":{"type":"string","value":"abcdefg"}, "key47":{"type":"string","value":"abcdefg"}, "key48":{"type":"string","value":"abcdefg"}, "key49":{"type":"string","value":"abcdefg"}, "key50":{"type":"string","value":"abcdefg"}, "key51":{"type":"string","value":"abcdefg"}, "key52":{"type":"string","value":"abcdefg"}, "key53":{"type":"string","value":"abcdefg"}, "key54":{"type":"string","value":"abcdefg"}, "key55":{"type":"string","value":"abcdefg"}, "key56":{"type":"string","value":"abcdefg"}, "key57":{"type":"string","value":"abcdefg"}, "key58":{"type":"string","value":"abcdefg"}, "key59":{"type":"string","value":"abcdefg"}, "key60":{"type":"string","value":"abcdefg"}, "key61":{"type":"string","value":"abcdefg"}, "key62":{"type":"string","value":"abcdefg"}, "key63":{"type":"string","value":"abcdefg"}, "key64":{"type":"string","value":"abcdefg"}, "key65":{"type":"string","value":"abcdefg"}, "key66":{"type":"string","value":"abcdefg"}, "key67":{"type":"string","value":"abcdefg"}, "key68":{"type":"string","value":"abcdefg"}, "key69":{"type":"string","value":"abcdefg"}, "key70":{"type":"string","value":"abcdefg"}, "key71":{"type":"string","value":"abcdefg"}, "key72":{"type":"string","value":"abcdefg"}, "key73":{"type":"string","value":"abcdefg"}, "key74":{"type":"string","value":"abcdefg"}, "key75":{"type":"string","value":"abcdefg"}, "key76":{"type":"string","value":"abcdefg"}, "key77":{"type":"string","value":"abcdefg"}, "key78":{"type":"string","value":"abcdefg"}, "key79":{"type":"string","value":"abcdefg"}, "key80":{"type":"string","value":"abcdefg"}, "key81":{"type":"string","value":"abcdefg"}, "key82":{"type":"string","value":"abcdefg"}, "key83":{"type":"string","value":"abcdefg"}, "key84":{"type":"string","value":"abcdefg"}, "key85":{"type":"string","value":"abcdefg"}, "key86":{"type":"string","value":"abcdefg"}, "key87":{"type":"string","value":"abcdefg"}, "key88":{"type":"string","value":"abcdefg"}, "key89":{"type":"string","value":"abcdefg"}, "key90":{"type":"string","value":"abcdefg"}, "key91":{"type":"string","value":"abcdefg"}, "key92":{"type":"string","value":"abcdefg"}, "key93":{"type":"string","value":"abcdefg"}, "key94":{"type":"string","value":"abcdefg"}, "key95":{"type":"string","value":"abcdefg"}, "key96":{"type":"string","value":"abcdefg"}, "key97":{"type":"string","value":"abcdefg"}, "key98":{"type":"string","value":"abcdefg"}, "key99":{"type":"string","value":"abcdefg"}, "key100":{"type":"string","value":"abcdefg"}, "key101":{"type":"string","value":"abcdefg"}, "key102":{"type":"string","value":"abcdefg"}, "key103":{"type":"string","value":"abcdefg"}, "key104":{"type":"string","value":"abcdefg"}, "key105":{"type":"string","value":"abcdefg"}, "key106":{"type":"string","value":"abcdefg"}, "key107":{"type":"string","value":"abcdefg"}, "key108":{"type":"string","value":"abcdefg"}, "key109":{"type":"string","value":"abcdefg"}, "key110":{"type":"string","value":"abcdefg"}, "key111":{"type":"string","value":"abcdefg"}, "key112":{"type":"string","value":"abcdefg"}, "key113":{"type":"string","value":"abcdefg"}, "key114":{"type":"string","value":"abcdefg"}, "key115":{"type":"string","value":"abcdefg"}, "key116":{"type":"string","value":"abcdefg"}, "key117":{"type":"string","value":"abcdefg"}, "key118":{"type":"string","value":"abcdefg"}, "key119":{"type":"string","value":"abcdefg"}, "key120":{"type":"string","value":"abcdefg"}, "key121":{"type":"string","value":"abcdefg"}, "key122":{"type":"string","value":"abcdefg"}, "key123":{"type":"string","value":"abcdefg"}, "key124":{"type":"string","value":"abcdefg"}, "key125":{"type":"string","value":"abcdefg"}, "key126":{"type":"string","value":"abcdefg"}, "key127":{"type":"string","value":"abcdefg"}, "key128":{"type":"string","value":"abcdefg"}, "key129":{"type":"string","value":"abcdefg"}, "key130":{"type":"string","value":"abcdefg"}, "key131":{"type":"string","value":"abcdefg"}, "key132":{"type":"string","value":"abcdefg"}, "key133":{"type":"string","value":"abcdefg"}, "key134":{"type":"string","value":"abcdefg"}, "key135":{"type":"string","value":"abcdefg"}, "key136":{"type":"string","value":"abcdefg"}, "key137":{"type":"string","value":"abcdefg"}, "key138":{"type":"string","value":"abcdefg"}, "key139":{"type":"string","value":"abcdefg"}, "key140":{"type":"string","value":"abcdefg"}, "key141":{"type":"string","value":"abcdefg"}, "key142":{"type":"string","value":"abcdefg"}, "key143":{"type":"string","value":"abcdefg"}, "key144":{"type":"string","value":"abcdefg"}, "key145":{"type":"string","value":"abcdefg"}, "key146":{"type":"string","value":"abcdefg"}, "key147":{"type":"string","value":"abcdefg"}, "key148":{"type":"string","value":"abcdefg"}, "key149":{"type":"string","value":"abcdefg"}, "key150":{"type":"string","value":"abcdefg"}, "key151":{"type":"string","value":"abcdefg"}, "key152":{"type":"string","value":"abcdefg"}, "key153":{"type":"string","value":"abcdefg"}, "key154":{"type":"string","value":"abcdefg"}, "key155":{"type":"string","value":"abcdefg"}, "key156":{"type":"string","value":"abcdefg"}, "key157":{"type":"string","value":"abcdefg"}, "key158":{"type":"string","value":"abcdefg"}, "key159":{"type":"string","value":"abcdefg"}, "key160":{"type":"string","value":"abcdefg"}, "key161":{"type":"string","value":"abcdefg"}, "key162":{"type":"string","value":"abcdefg"}, "key163":{"type":"string","value":"abcdefg"}, "key164":{"type":"string","value":"abcdefg"}, "key165":{"type":"string","value":"abcdefg"}, "key166":{"type":"string","value":"abcdefg"}, "key167":{"type":"string","value":"abcdefg"}, "key168":{"type":"string","value":"abcdefg"}, "key169":{"type":"string","value":"abcdefg"}, "key170":{"type":"string","value":"abcdefg"}, "key171":{"type":"string","value":"abcdefg"}, "key172":{"type":"string","value":"abcdefg"}, "key173":{"type":"string","value":"abcdefg"}, "key174":{"type":"string","value":"abcdefg"}, "key175":{"type":"string","value":"abcdefg"}, "key176":{"type":"string","value":"abcdefg"}, "key177":{"type":"string","value":"abcdefg"}, "key178":{"type":"string","value":"abcdefg"}, "key179":{"type":"string","value":"abcdefg"}, "key180":{"type":"string","value":"abcdefg"}, "key181":{"type":"string","value":"abcdefg"}, "key182":{"type":"string","value":"abcdefg"}, "key183":{"type":"string","value":"abcdefg"}, "key184":{"type":"string","value":"abcdefg"}, "key185":{"type":"string","value":"abcdefg"}, "key186":{"type":"string","value":"abcdefg"}, "key187":{"type":"string","value":"abcdefg"}, "key188":{"type":"string","value":"abcdefg"}, "key189":{"type":"string","value":"abcdefg"}, "key190":{"type":"string","value":"abcdefg"}, "key191":{"type":"string","value":"abcdefg"}, "key192":{"type":"string","value":"abcdefg"}, "key193":{"type":"string","value":"abcdefg"}, "key194":{"type":"string","value":"abcdefg"}, "key195":{"type":"string","value":"abcdefg"}, "key196":{"type":"string","value":"abcdefg"}, "key197":{"type":"string","value":"abcdefg"}, "key198":{"type":"string","value":"abcdefg"}, "key199":{"type":"string","value":"abcdefg"}, "key200":{"type":"string","value":"abcdefg"}, "key201":{"type":"string","value":"abcdefg"}, "key202":{"type":"string","value":"abcdefg"}, "key203":{"type":"string","value":"abcdefg"}, "key204":{"type":"string","value":"abcdefg"}, "key205":{"type":"string","value":"abcdefg"}, "key206":{"type":"string","value":"abcdefg"}, "key207":{"type":"string","value":"abcdefg"}, "key208":{"type":"string","value":"abcdefg"}, "key209":{"type":"string","value":"abcdefg"}, "key210":{"type":"string","value":"abcdefg"}, "key211":{"type":"string","value":"abcdefg"}, "key212":{"type":"string","value":"abcdefg"}, "key213":{"type":"string","value":"abcdefg"}, "key214":{"type":"string","value":"abcdefg"}, "key215":{"type":"string","value":"abcdefg"}, "key216":{"type":"string","value":"abcdefg"}, "key217":{"type":"string","value":"abcdefg"}, "key218":{"type":"string","value":"abcdefg"}, "key219":{"type":"string","value":"abcdefg"}, "key220":{"type":"string","value":"abcdefg"}, "key221":{"type":"string","value":"abcdefg"}, "key222":{"type":"string","value":"abcdefg"}, "key223":{"type":"string","value":"abcdefg"}, "key224":{"type":"string","value":"abcdefg"}, "key225":{"type":"string","value":"abcdefg"}, "key226":{"type":"string","value":"abcdefg"}, "key227":{"type":"string","value":"abcdefg"}, "key228":{"type":"string","value":"abcdefg"}, "key229":{"type":"string","value":"abcdefg"}, "key230":{"type":"string","value":"abcdefg"}, "key231":{"type":"string","value":"abcdefg"}, "key232":{"type":"string","value":"abcdefg"}, "key233":{"type":"string","value":"abcdefg"}, "key234":{"type":"string","value":"abcdefg"}, "key235":{"type":"string","value":"abcdefg"}, "key236":{"type":"string","value":"abcdefg"}, "key237":{"type":"string","value":"abcdefg"}, "key238":{"type":"string","value":"abcdefg"}, "key239":{"type":"string","value":"abcdefg"}, "key240":{"type":"string","value":"abcdefg"}, "key241":{"type":"string","value":"abcdefg"}, "key242":{"type":"string","value":"abcdefg"}, "key243":{"type":"string","value":"abcdefg"}, "key244":{"type":"string","value":"abcdefg"}, "key245":{"type":"string","value":"abcdefg"}, "key246":{"type":"string","value":"abcdefg"}, "key247":{"type":"string","value":"abcdefg"}, "key248":{"type":"string","value":"abcdefg"}, "key249":{"type":"string","value":"abcdefg"}, "key250":{"type":"string","value":"abcdefg"}, "key251":{"type":"string","value":"abcdefg"}, "key252":{"type":"string","value":"abcdefg"}, "key253":{"type":"string","value":"abcdefg"}, "key254":{"type":"string","value":"abcdefg"}, "key255":{"type":"string","value":"abcdefg"}, "key256":{"type":"string","value":"abcdefg"}, "key257":{"type":"string","value":"abcdefg"}, "key258":{"type":"string","value":"abcdefg"}, "key259":{"type":"string","value":"abcdefg"}, "key260":{"type":"string","value":"abcdefg"}, "key261":{"type":"string","value":"abcdefg"}, "key262":{"type":"string","value":"abcdefg"}, "key263":{"type":"string","value":"abcdefg"}, "key264":{"type":"string","value":"abcdefg"}, "key265":{"type":"string","value":"abcdefg"}, "key266":{"type":"string","value":"abcdefg"}, "key267":{"type":"string","value":"abcdefg"}, "key268":{"type":"string","value":"abcdefg"}, "key269":{"type":"string","value":"abcdefg"}, "key270":{"type":"string","value":"abcdefg"}, "key271":{"type":"string","value":"abcdefg"}, "key272":{"type":"string","value":"abcdefg"}, "key273":{"type":"string","value":"abcdefg"}, "key274":{"type":"string","value":"abcdefg"}, "key275":{"type":"string","value":"abcdefg"}, "key276":{"type":"string","value":"abcdefg"}, "key277":{"type":"string","value":"abcdefg"}, "key278":{"type":"string","value":"abcdefg"}, "key279":{"type":"string","value":"abcdefg"}, "key280":{"type":"string","value":"abcdefg"}, "key281":{"type":"string","value":"abcdefg"}, "key282":{"type":"string","value":"abcdefg"}, "key283":{"type":"string","value":"abcdefg"}, "key284":{"type":"string","value":"abcdefg"}, "key285":{"type":"string","value":"abcdefg"}, "key286":{"type":"string","value":"abcdefg"}, "key287":{"type":"string","value":"abcdefg"}, "key288":{"type":"string","value":"abcdefg"}, "key289":{"type":"string","value":"abcdefg"}, "key290":{"type":"string","value":"abcdefg"}, "key291":{"type":"string","value":"abcdefg"}, "key292":{"type":"string","value":"abcdefg"}, "key293":{"type":"string","value":"abcdefg"}, "key294":{"type":"string","value":"abcdefg"}, "key295":{"type":"string","value":"abcdefg"}, "key296":{"type":"string","value":"abcdefg"}, "key297":{"type":"string","value":"abcdefg"}, "key298":{"type":"string","value":"abcdefg"}, "key299":{"type":"string","value":"abcdefg"}, "key300":{"type":"string","value":"abcdefg"}, "key301":{"type":"string","value":"abcdefg"}, "key302":{"type":"string","value":"abcdefg"}, "key303":{"type":"string","value":"abcdefg"}, "key304":{"type":"string","value":"abcdefg"}, "key305":{"type":"string","value":"abcdefg"}, "key306":{"type":"string","value":"abcdefg"}, "key307":{"type":"string","value":"abcdefg"}, "key308":{"type":"string","value":"abcdefg"}, "key309":{"type":"string","value":"abcdefg"}, "key310":{"type":"string","value":"abcdefg"}, "key311":{"type":"string","value":"abcdefg"}, "key312":{"type":"string","value":"abcdefg"}, "key313":{"type":"string","value":"abcdefg"}, "key314":{"type":"string","value":"abcdefg"}, "key315":{"type":"string","value":"abcdefg"}, "key316":{"type":"string","value":"abcdefg"}, "key317":{"type":"string","value":"abcdefg"}, "key318":{"type":"string","value":"abcdefg"}, "key319":{"type":"string","value":"abcdefg"}, "key320":{"type":"string","value":"abcdefg"}, "key321":{"type":"string","value":"abcdefg"}, "key322":{"type":"string","value":"abcdefg"}, "key323":{"type":"string","value":"abcdefg"}, "key324":{"type":"string","value":"abcdefg"}, "key325":{"type":"string","value":"abcdefg"}, "key326":{"type":"string","value":"abcdefg"}, "key327":{"type":"string","value":"abcdefg"}, "key328":{"type":"string","value":"abcdefg"}, "key329":{"type":"string","value":"abcdefg"}, "key330":{"type":"string","value":"abcdefg"}, "key331":{"type":"string","value":"abcdefg"}, "key332":{"type":"string","value":"abcdefg"}, "key333":{"type":"string","value":"abcdefg"}, "key334":{"type":"string","value":"abcdefg"}, "key335":{"type":"string","value":"abcdefg"}, "key336":{"type":"string","value":"abcdefg"}, "key337":{"type":"string","value":"abcdefg"}, "key338":{"type":"string","value":"abcdefg"}, "key339":{"type":"string","value":"abcdefg"}, "key340":{"type":"string","value":"abcdefg"}, "key341":{"type":"string","value":"abcdefg"}, "key342":{"type":"string","value":"abcdefg"}, "key343":{"type":"string","value":"abcdefg"}, "key344":{"type":"string","value":"abcdefg"}, "key345":{"type":"string","value":"abcdefg"}, "key346":{"type":"string","value":"abcdefg"}, "key347":{"type":"string","value":"abcdefg"}, "key348":{"type":"string","value":"abcdefg"}, "key349":{"type":"string","value":"abcdefg"}, "key350":{"type":"string","value":"abcdefg"}, "key351":{"type":"string","value":"abcdefg"}, "key352":{"type":"string","value":"abcdefg"}, "key353":{"type":"string","value":"abcdefg"}, "key354":{"type":"string","value":"abcdefg"}, "key355":{"type":"string","value":"abcdefg"}, "key356":{"type":"string","value":"abcdefg"}, "key357":{"type":"string","value":"abcdefg"}, "key358":{"type":"string","value":"abcdefg"}, "key359":{"type":"string","value":"abcdefg"}, "key360":{"type":"string","value":"abcdefg"}, "key361":{"type":"string","value":"abcdefg"}, "key362":{"type":"string","value":"abcdefg"}, "key363":{"type":"string","value":"abcdefg"}, "key364":{"type":"string","value":"abcdefg"}, "key365":{"type":"string","value":"abcdefg"}, "key366":{"type":"string","value":"abcdefg"}, "key367":{"type":"string","value":"abcdefg"}, "key368":{"type":"string","value":"abcdefg"}, "key369":{"type":"string","value":"abcdefg"}, "key370":{"type":"string","value":"abcdefg"}, "key371":{"type":"string","value":"abcdefg"}, "key372":{"type":"string","value":"abcdefg"}, "key373":{"type":"string","value":"abcdefg"}, "key374":{"type":"string","value":"abcdefg"}, "key375":{"type":"string","value":"abcdefg"}, "key376":{"type":"string","value":"abcdefg"}, "key377":{"type":"string","value":"abcdefg"}, "key378":{"type":"string","value":"abcdefg"}, "key379":{"type":"string","value":"abcdefg"}, "key380":{"type":"string","value":"abcdefg"}, "key381":{"type":"string","value":"abcdefg"}, "key382":{"type":"string","value":"abcdefg"}, "key383":{"type":"string","value":"abcdefg"}, "key384":{"type":"string","value":"abcdefg"}, "key385":{"type":"string","value":"abcdefg"}, "key386":{"type":"string","value":"abcdefg"}, "key387":{"type":"string","value":"abcdefg"}, "key388":{"type":"string","value":"abcdefg"}, "key389":{"type":"string","value":"abcdefg"}, "key390":{"type":"string","value":"abcdefg"}, "key391":{"type":"string","value":"abcdefg"}, "key392":{"type":"string","value":"abcdefg"}, "key393":{"type":"string","value":"abcdefg"}, "key394":{"type":"string","value":"abcdefg"}, "key395":{"type":"string","value":"abcdefg"}, "key396":{"type":"string","value":"abcdefg"}, "key397":{"type":"string","value":"abcdefg"}, "key398":{"type":"string","value":"abcdefg"}, "key399":{"type":"string","value":"abcdefg"}, "key400":{"type":"string","value":"abcdefg"}, "key401":{"type":"string","value":"abcdefg"}, "key402":{"type":"string","value":"abcdefg"}, "key403":{"type":"string","value":"abcdefg"}, "key404":{"type":"string","value":"abcdefg"}, "key405":{"type":"string","value":"abcdefg"}, "key406":{"type":"string","value":"abcdefg"}, "key407":{"type":"string","value":"abcdefg"}, "key408":{"type":"string","value":"abcdefg"}, "key409":{"type":"string","value":"abcdefg"}, "key410":{"type":"string","value":"abcdefg"}, "key411":{"type":"string","value":"abcdefg"}, "key412":{"type":"string","value":"abcdefg"}, "key413":{"type":"string","value":"abcdefg"}, "key414":{"type":"string","value":"abcdefg"}, "key415":{"type":"string","value":"abcdefg"}, "key416":{"type":"string","value":"abcdefg"}, "key417":{"type":"string","value":"abcdefg"}, "key418":{"type":"string","value":"abcdefg"}, "key419":{"type":"string","value":"abcdefg"}, "key420":{"type":"string","value":"abcdefg"}, "key421":{"type":"string","value":"abcdefg"}, "key422":{"type":"string","value":"abcdefg"}, "key423":{"type":"string","value":"abcdefg"}, "key424":{"type":"string","value":"abcdefg"}, "key425":{"type":"string","value":"abcdefg"}, "key426":{"type":"string","value":"abcdefg"}, "key427":{"type":"string","value":"abcdefg"}, "key428":{"type":"string","value":"abcdefg"}, "key429":{"type":"string","value":"abcdefg"}, "key430":{"type":"string","value":"abcdefg"}, "key431":{"type":"string","value":"abcdefg"}, "key432":{"type":"string","value":"abcdefg"}, "key433":{"type":"string","value":"abcdefg"}, "key434":{"type":"string","value":"abcdefg"}, "key435":{"type":"string","value":"abcdefg"}, "key436":{"type":"string","value":"abcdefg"}, "key437":{"type":"string","value":"abcdefg"}, "key438":{"type":"string","value":"abcdefg"}, "key439":{"type":"string","value":"abcdefg"}, "key440":{"type":"string","value":"abcdefg"}, "key441":{"type":"string","value":"abcdefg"}, "key442":{"type":"string","value":"abcdefg"}, "key443":{"type":"string","value":"abcdefg"}, "key444":{"type":"string","value":"abcdefg"}, "key445":{"type":"string","value":"abcdefg"}, "key446":{"type":"string","value":"abcdefg"}, "key447":{"type":"string","value":"abcdefg"}, "key448":{"type":"string","value":"abcdefg"}, "key449":{"type":"string","value":"abcdefg"}, "key450":{"type":"string","value":"abcdefg"}, "key451":{"type":"string","value":"abcdefg"}, "key452":{"type":"string","value":"abcdefg"}, "key453":{"type":"string","value":"abcdefg"}, "key454":{"type":"string","value":"abcdefg"}, "key455":{"type":"string","value":"abcdefg"}, "key456":{"type":"string","value":"abcdefg"}, "key457":{"type":"string","value":"abcdefg"}, "key458":{"type":"string","value":"abcdefg"}, "key459":{"type":"string","value":"abcdefg"}, "key460":{"type":"string","value":"abcdefg"}, "key461":{"type":"string","value":"abcdefg"}, "key462":{"type":"string","value":"abcdefg"}, "key463":{"type":"string","value":"abcdefg"}, "key464":{"type":"string","value":"abcdefg"}, "key465":{"type":"string","value":"abcdefg"}, "key466":{"type":"string","value":"abcdefg"}, "key467":{"type":"string","value":"abcdefg"}, "key468":{"type":"string","value":"abcdefg"}, "key469":{"type":"string","value":"abcdefg"}, "key470":{"type":"string","value":"abcdefg"}, "key471":{"type":"string","value":"abcdefg"}, "key472":{"type":"string","value":"abcdefg"}, "key473":{"type":"string","value":"abcdefg"}, "key474":{"type":"string","value":"abcdefg"}, "key475":{"type":"string","value":"abcdefg"}, "key476":{"type":"string","value":"abcdefg"}, "key477":{"type":"string","value":"abcdefg"}, "key478":{"type":"string","value":"abcdefg"}, "key479":{"type":"string","value":"abcdefg"}, "key480":{"type":"string","value":"abcdefg"}, "key481":{"type":"string","value":"abcdefg"}, "key482":{"type":"string","value":"abcdefg"}, "key483":{"type":"string","value":"abcdefg"}, "key484":{"type":"string","value":"abcdefg"}, "key485":{"type":"string","value":"abcdefg"}, "key486":{"type":"string","value":"abcdefg"}, "key487":{"type":"string","value":"abcdefg"}, "key488":{"type":"string","value":"abcdefg"}, "key489":{"type":"string","value":"abcdefg"}, "key490":{"type":"string","value":"abcdefg"}, "key491":{"type":"string","value":"abcdefg"}, "key492":{"type":"string","value":"abcdefg"}, "key493":{"type":"string","value":"abcdefg"}, "key494":{"type":"string","value":"abcdefg"}, "key495":{"type":"string","value":"abcdefg"}, "key496":{"type":"string","value":"abcdefg"}, "key497":{"type":"string","value":"abcdefg"}, "key498":{"type":"string","value":"abcdefg"}, "key499":{"type":"string","value":"abcdefg"}, "key500":{"type":"string","value":"abcdefg"}, "key501":{"type":"string","value":"abcdefg"}, "key502":{"type":"string","value":"abcdefg"}, "key503":{"type":"string","value":"abcdefg"}, "key504":{"type":"string","value":"abcdefg"}, "key505":{"type":"string","value":"abcdefg"}, "key506":{"type":"string","value":"abcdefg"}, "key507":{"type":"string","value":"abcdefg"}, "key508":{"type":"string","value":"abcdefg"}, "key509":{"type":"string","value":"abcdefg"}, "key510":{"type":"string","value":"abcdefg"}, "key511":{"type":"string","value":"abcdefg"}, "key512":{"type":"string","value":"abcdefg"}, "key513":{"type":"string","value":"abcdefg"}, "key514":{"type":"string","value":"abcdefg"}, "key515":{"type":"string","value":"abcdefg"}, "key516":{"type":"string","value":"abcdefg"}, "key517":{"type":"string","value":"abcdefg"}, "key518":{"type":"string","value":"abcdefg"}, "key519":{"type":"string","value":"abcdefg"}, "key520":{"type":"string","value":"abcdefg"}, "key521":{"type":"string","value":"abcdefg"}, "key522":{"type":"string","value":"abcdefg"}, "key523":{"type":"string","value":"abcdefg"}, "key524":{"type":"string","value":"abcdefg"}, "key525":{"type":"string","value":"abcdefg"}, "key526":{"type":"string","value":"abcdefg"}, "key527":{"type":"string","value":"abcdefg"}, "key528":{"type":"string","value":"abcdefg"}, "key529":{"type":"string","value":"abcdefg"}, "key530":{"type":"string","value":"abcdefg"}, "key531":{"type":"string","value":"abcdefg"}, "key532":{"type":"string","value":"abcdefg"}, "key533":{"type":"string","value":"abcdefg"}, "key534":{"type":"string","value":"abcdefg"}, "key535":{"type":"string","value":"abcdefg"}, "key536":{"type":"string","value":"abcdefg"}, "key537":{"type":"string","value":"abcdefg"}, "key538":{"type":"string","value":"abcdefg"}, "key539":{"type":"string","value":"abcdefg"}, "key540":{"type":"string","value":"abcdefg"}, "key541":{"type":"string","value":"abcdefg"}, "key542":{"type":"string","value":"abcdefg"}, "key543":{"type":"string","value":"abcdefg"}, "key544":{"type":"string","value":"abcdefg"}, "key545":{"type":"string","value":"abcdefg"}, "key546":{"type":"string","value":"abcdefg"}, "key547":{"type":"string","value":"abcdefg"}, "key548":{"type":"string","value":"abcdefg"}, "key549":{"type":"string","value":"abcdefg"}, "key550":{"type":"string","value":"abcdefg"}, "key551":{"type":"string","value":"abcdefg"}, "key552":{"type":"string","value":"abcdefg"}, "key553":{"type":"string","value":"abcdefg"}, "key554":{"type":"string","value":"abcdefg"}, "key555":{"type":"string","value":"abcdefg"}, "key556":{"type":"string","value":"abcdefg"}, "key557":{"type":"string","value":"abcdefg"}, "key558":{"type":"string","value":"abcdefg"}, "key559":{"type":"string","value":"abcdefg"}, "key560":{"type":"string","value":"abcdefg"}, "key561":{"type":"string","value":"abcdefg"}, "key562":{"type":"string","value":"abcdefg"}, "key563":{"type":"string","value":"abcdefg"}, "key564":{"type":"string","value":"abcdefg"}, "key565":{"type":"string","value":"abcdefg"}, "key566":{"type":"string","value":"abcdefg"}, "key567":{"type":"string","value":"abcdefg"}, "key568":{"type":"string","value":"abcdefg"}, "key569":{"type":"string","value":"abcdefg"}, "key570":{"type":"string","value":"abcdefg"}, "key571":{"type":"string","value":"abcdefg"}, "key572":{"type":"string","value":"abcdefg"}, "key573":{"type":"string","value":"abcdefg"}, "key574":{"type":"string","value":"abcdefg"}, "key575":{"type":"string","value":"abcdefg"}, "key576":{"type":"string","value":"abcdefg"}, "key577":{"type":"string","value":"abcdefg"}, "key578":{"type":"string","value":"abcdefg"}, "key579":{"type":"string","value":"abcdefg"}, "key580":{"type":"string","value":"abcdefg"}, "key581":{"type":"string","value":"abcdefg"}, "key582":{"type":"string","value":"abcdefg"}, "key583":{"type":"string","value":"abcdefg"}, "key584":{"type":"string","value":"abcdefg"}, "key585":{"type":"string","value":"abcdefg"}, "key586":{"type":"string","value":"abcdefg"}, "key587":{"type":"string","value":"abcdefg"}, "key588":{"type":"string","value":"abcdefg"}, "key589":{"type":"string","value":"abcdefg"}, "key590":{"type":"string","value":"abcdefg"}, "key591":{"type":"string","value":"abcdefg"}, "key592":{"type":"string","value":"abcdefg"}, "key593":{"type":"string","value":"abcdefg"}, "key594":{"type":"string","value":"abcdefg"}, "key595":{"type":"string","value":"abcdefg"}, "key596":{"type":"string","value":"abcdefg"}, "key597":{"type":"string","value":"abcdefg"}, "key598":{"type":"string","value":"abcdefg"}, "key599":{"type":"string","value":"abcdefg"}, "key600":{"type":"string","value":"abcdefg"}, "key601":{"type":"string","value":"abcdefg"}, "key602":{"type":"string","value":"abcdefg"}, "key603":{"type":"string","value":"abcdefg"}, "key604":{"type":"string","value":"abcdefg"}, "key605":{"type":"string","value":"abcdefg"}, "key606":{"type":"string","value":"abcdefg"}, "key607":{"type":"string","value":"abcdefg"}, "key608":{"type":"string","value":"abcdefg"}, "key609":{"type":"string","value":"abcdefg"}, "key610":{"type":"string","value":"abcdefg"}, "key611":{"type":"string","value":"abcdefg"}, "key612":{"type":"string","value":"abcdefg"}, "key613":{"type":"string","value":"abcdefg"}, "key614":{"type":"string","value":"abcdefg"}, "key615":{"type":"string","value":"abcdefg"}, "key616":{"type":"string","value":"abcdefg"}, "key617":{"type":"string","value":"abcdefg"}, "key618":{"type":"string","value":"abcdefg"}, "key619":{"type":"string","value":"abcdefg"}, "key620":{"type":"string","value":"abcdefg"}, "key621":{"type":"string","value":"abcdefg"}, "key622":{"type":"string","value":"abcdefg"}, "key623":{"type":"string","value":"abcdefg"}, "key624":{"type":"string","value":"abcdefg"}, "key625":{"type":"string","value":"abcdefg"}, "key626":{"type":"string","value":"abcdefg"}, "key627":{"type":"string","value":"abcdefg"}, "key628":{"type":"string","value":"abcdefg"}, "key629":{"type":"string","value":"abcdefg"}, "key630":{"type":"string","value":"abcdefg"}, "key631":{"type":"string","value":"abcdefg"}, "key632":{"type":"string","value":"abcdefg"}, "key633":{"type":"string","value":"abcdefg"}, "key634":{"type":"string","value":"abcdefg"}, "key635":{"type":"string","value":"abcdefg"}, "key636":{"type":"string","value":"abcdefg"}, "key637":{"type":"string","value":"abcdefg"}, "key638":{"type":"string","value":"abcdefg"}, "key639":{"type":"string","value":"abcdefg"}, "key640":{"type":"string","value":"abcdefg"}, "key641":{"type":"string","value":"abcdefg"}, "key642":{"type":"string","value":"abcdefg"}, "key643":{"type":"string","value":"abcdefg"}, "key644":{"type":"string","value":"abcdefg"}, "key645":{"type":"string","value":"abcdefg"}, "key646":{"type":"string","value":"abcdefg"}, "key647":{"type":"string","value":"abcdefg"}, "key648":{"type":"string","value":"abcdefg"}, "key649":{"type":"string","value":"abcdefg"}, "key650":{"type":"string","value":"abcdefg"}, "key651":{"type":"string","value":"abcdefg"}, "key652":{"type":"string","value":"abcdefg"}, "key653":{"type":"string","value":"abcdefg"}, "key654":{"type":"string","value":"abcdefg"}, "key655":{"type":"string","value":"abcdefg"}, "key656":{"type":"string","value":"abcdefg"}, "key657":{"type":"string","value":"abcdefg"}, "key658":{"type":"string","value":"abcdefg"}, "key659":{"type":"string","value":"abcdefg"}, "key660":{"type":"string","value":"abcdefg"}, "key661":{"type":"string","value":"abcdefg"}, "key662":{"type":"string","value":"abcdefg"}, "key663":{"type":"string","value":"abcdefg"}, "key664":{"type":"string","value":"abcdefg"}, "key665":{"type":"string","value":"abcdefg"}, "key666":{"type":"string","value":"abcdefg"}, "key667":{"type":"string","value":"abcdefg"}, "key668":{"type":"string","value":"abcdefg"}, "key669":{"type":"string","value":"abcdefg"}, "key670":{"type":"string","value":"abcdefg"}, "key671":{"type":"string","value":"abcdefg"}, "key672":{"type":"string","value":"abcdefg"}, "key673":{"type":"string","value":"abcdefg"}, "key674":{"type":"string","value":"abcdefg"}, "key675":{"type":"string","value":"abcdefg"}, "key676":{"type":"string","value":"abcdefg"}, "key677":{"type":"string","value":"abcdefg"}, "key678":{"type":"string","value":"abcdefg"}, "key679":{"type":"string","value":"abcdefg"}, "key680":{"type":"string","value":"abcdefg"}, "key681":{"type":"string","value":"abcdefg"}, "key682":{"type":"string","value":"abcdefg"}, "key683":{"type":"string","value":"abcdefg"}, "key684":{"type":"string","value":"abcdefg"}, "key685":{"type":"string","value":"abcdefg"}, "key686":{"type":"string","value":"abcdefg"}, "key687":{"type":"string","value":"abcdefg"}, "key688":{"type":"string","value":"abcdefg"}, "key689":{"type":"string","value":"abcdefg"}, "key690":{"type":"string","value":"abcdefg"}, "key691":{"type":"string","value":"abcdefg"}, "key692":{"type":"string","value":"abcdefg"}, "key693":{"type":"string","value":"abcdefg"}, "key694":{"type":"string","value":"abcdefg"}, "key695":{"type":"string","value":"abcdefg"}, "key696":{"type":"string","value":"abcdefg"}, "key697":{"type":"string","value":"abcdefg"}, "key698":{"type":"string","value":"abcdefg"}, "key699":{"type":"string","value":"abcdefg"}, "key700":{"type":"string","value":"abcdefg"}, "key701":{"type":"string","value":"abcdefg"}, "key702":{"type":"string","value":"abcdefg"}, "key703":{"type":"string","value":"abcdefg"}, "key704":{"type":"string","value":"abcdefg"}, "key705":{"type":"string","value":"abcdefg"}, "key706":{"type":"string","value":"abcdefg"}, "key707":{"type":"string","value":"abcdefg"}, "key708":{"type":"string","value":"abcdefg"}, "key709":{"type":"string","value":"abcdefg"}, "key710":{"type":"string","value":"abcdefg"}, "key711":{"type":"string","value":"abcdefg"}, "key712":{"type":"string","value":"abcdefg"}, "key713":{"type":"string","value":"abcdefg"}, "key714":{"type":"string","value":"abcdefg"}, "key715":{"type":"string","value":"abcdefg"}, "key716":{"type":"string","value":"abcdefg"}, "key717":{"type":"string","value":"abcdefg"}, "key718":{"type":"string","value":"abcdefg"}, "key719":{"type":"string","value":"abcdefg"}, "key720":{"type":"string","value":"abcdefg"}, "key721":{"type":"string","value":"abcdefg"}, "key722":{"type":"string","value":"abcdefg"}, "key723":{"type":"string","value":"abcdefg"}, "key724":{"type":"string","value":"abcdefg"}, "key725":{"type":"string","value":"abcdefg"}, "key726":{"type":"string","value":"abcdefg"}, "key727":{"type":"string","value":"abcdefg"}, "key728":{"type":"string","value":"abcdefg"}, "key729":{"type":"string","value":"abcdefg"}, "key730":{"type":"string","value":"abcdefg"}, "key731":{"type":"string","value":"abcdefg"}, "key732":{"type":"string","value":"abcdefg"}, "key733":{"type":"string","value":"abcdefg"}, "key734":{"type":"string","value":"abcdefg"}, "key735":{"type":"string","value":"abcdefg"}, "key736":{"type":"string","value":"abcdefg"}, "key737":{"type":"string","value":"abcdefg"}, "key738":{"type":"string","value":"abcdefg"}, "key739":{"type":"string","value":"abcdefg"}, "key740":{"type":"string","value":"abcdefg"}, "key741":{"type":"string","value":"abcdefg"}, "key742":{"type":"string","value":"abcdefg"}, "key743":{"type":"string","value":"abcdefg"}, "key744":{"type":"string","value":"abcdefg"}, "key745":{"type":"string","value":"abcdefg"}, "key746":{"type":"string","value":"abcdefg"}, "key747":{"type":"string","value":"abcdefg"}, "key748":{"type":"string","value":"abcdefg"}, "key749":{"type":"string","value":"abcdefg"}, "key750":{"type":"string","value":"abcdefg"}, "key751":{"type":"string","value":"abcdefg"}, "key752":{"type":"string","value":"abcdefg"}, "key753":{"type":"string","value":"abcdefg"}, "key754":{"type":"string","value":"abcdefg"}, "key755":{"type":"string","value":"abcdefg"}, "key756":{"type":"string","value":"abcdefg"}, "key757":{"type":"string","value":"abcdefg"}, "key758":{"type":"string","value":"abcdefg"}, "key759":{"type":"string","value":"abcdefg"}, "key760":{"type":"string","value":"abcdefg"}, "key761":{"type":"string","value":"abcdefg"}, "key762":{"type":"string","value":"abcdefg"}, "key763":{"type":"string","value":"abcdefg"}, "key764":{"type":"string","value":"abcdefg"}, "key765":{"type":"string","value":"abcdefg"}, "key766":{"type":"string","value":"abcdefg"}, "key767":{"type":"string","value":"abcdefg"}, "key768":{"type":"string","value":"abcdefg"}, "key769":{"type":"string","value":"abcdefg"}, "key770":{"type":"string","value":"abcdefg"}, "key771":{"type":"string","value":"abcdefg"}, "key772":{"type":"string","value":"abcdefg"}, "key773":{"type":"string","value":"abcdefg"}, "key774":{"type":"string","value":"abcdefg"}, "key775":{"type":"string","value":"abcdefg"}, "key776":{"type":"string","value":"abcdefg"}, "key777":{"type":"string","value":"abcdefg"}, "key778":{"type":"string","value":"abcdefg"}, "key779":{"type":"string","value":"abcdefg"}, "key780":{"type":"string","value":"abcdefg"}, "key781":{"type":"string","value":"abcdefg"}, "key782":{"type":"string","value":"abcdefg"}, "key783":{"type":"string","value":"abcdefg"}, "key784":{"type":"string","value":"abcdefg"}, "key785":{"type":"string","value":"abcdefg"}, "key786":{"type":"string","value":"abcdefg"}, "key787":{"type":"string","value":"abcdefg"}, "key788":{"type":"string","value":"abcdefg"}, "key789":{"type":"string","value":"abcdefg"}, "key790":{"type":"string","value":"abcdefg"}, "key791":{"type":"string","value":"abcdefg"}, "key792":{"type":"string","value":"abcdefg"}, "key793":{"type":"string","value":"abcdefg"}, "key794":{"type":"string","value":"abcdefg"}, "key795":{"type":"string","value":"abcdefg"}, "key796":{"type":"string","value":"abcdefg"}, "key797":{"type":"string","value":"abcdefg"}, "key798":{"type":"string","value":"abcdefg"}, "key799":{"type":"string","value":"abcdefg"}, "key800":{"type":"string","value":"abcdefg"}, "key801":{"type":"string","value":"abcdefg"}, "key802":{"type":"string","value":"abcdefg"}, "key803":{"type":"string","value":"abcdefg"}, "key804":{"type":"string","value":"abcdefg"}, "key805":{"type":"string","value":"abcdefg"}, "key806":{"type":"string","value":"abcdefg"}, "key807":{"type":"string","value":"abcdefg"}, "key808":{"type":"string","value":"abcdefg"}, "key809":{"type":"string","value":"abcdefg"}, "key810":{"type":"string","value":"abcdefg"}, "key811":{"type":"string","value":"abcdefg"}, "key812":{"type":"string","value":"abcdefg"}, "key813":{"type":"string","value":"abcdefg"}, "key814":{"type":"string","value":"abcdefg"}, "key815":{"type":"string","value":"abcdefg"}, "key816":{"type":"string","value":"abcdefg"}, "key817":{"type":"string","value":"abcdefg"}, "key818":{"type":"string","value":"abcdefg"}, "key819":{"type":"string","value":"abcdefg"}, "key820":{"type":"string","value":"abcdefg"}, "key821":{"type":"string","value":"abcdefg"}, "key822":{"type":"string","value":"abcdefg"}, "key823":{"type":"string","value":"abcdefg"}, "key824":{"type":"string","value":"abcdefg"}, "key825":{"type":"string","value":"abcdefg"}, "key826":{"type":"string","value":"abcdefg"}, "key827":{"type":"string","value":"abcdefg"}, "key828":{"type":"string","value":"abcdefg"}, "key829":{"type":"string","value":"abcdefg"}, "key830":{"type":"string","value":"abcdefg"}, "key831":{"type":"string","value":"abcdefg"}, "key832":{"type":"string","value":"abcdefg"}, "key833":{"type":"string","value":"abcdefg"}, "key834":{"type":"string","value":"abcdefg"}, "key835":{"type":"string","value":"abcdefg"}, "key836":{"type":"string","value":"abcdefg"}, "key837":{"type":"string","value":"abcdefg"}, "key838":{"type":"string","value":"abcdefg"}, "key839":{"type":"string","value":"abcdefg"}, "key840":{"type":"string","value":"abcdefg"}, "key841":{"type":"string","value":"abcdefg"}, "key842":{"type":"string","value":"abcdefg"}, "key843":{"type":"string","value":"abcdefg"}, "key844":{"type":"string","value":"abcdefg"}, "key845":{"type":"string","value":"abcdefg"}, "key846":{"type":"string","value":"abcdefg"}, "key847":{"type":"string","value":"abcdefg"}, "key848":{"type":"string","value":"abcdefg"}, "key849":{"type":"string","value":"abcdefg"}, "key850":{"type":"string","value":"abcdefg"}, "key851":{"type":"string","value":"abcdefg"}, "key852":{"type":"string","value":"abcdefg"}, "key853":{"type":"string","value":"abcdefg"}, "key854":{"type":"string","value":"abcdefg"}, "key855":{"type":"string","value":"abcdefg"}, "key856":{"type":"string","value":"abcdefg"}, "key857":{"type":"string","value":"abcdefg"}, "key858":{"type":"string","value":"abcdefg"}, "key859":{"type":"string","value":"abcdefg"}, "key860":{"type":"string","value":"abcdefg"}, "key861":{"type":"string","value":"abcdefg"}, "key862":{"type":"string","value":"abcdefg"}, "key863":{"type":"string","value":"abcdefg"}, "key864":{"type":"string","value":"abcdefg"}, "key865":{"type":"string","value":"abcdefg"}, "key866":{"type":"string","value":"abcdefg"}, "key867":{"type":"string","value":"abcdefg"}, "key868":{"type":"string","value":"abcdefg"}, "key869":{"type":"string","value":"abcdefg"}, "key870":{"type":"string","value":"abcdefg"}, "key871":{"type":"string","value":"abcdefg"}, "key872":{"type":"string","value":"abcdefg"}, "key873":{"type":"string","value":"abcdefg"}, "key874":{"type":"string","value":"abcdefg"}, "key875":{"type":"string","value":"abcdefg"}, "key876":{"type":"string","value":"abcdefg"}, "key877":{"type":"string","value":"abcdefg"}, "key878":{"type":"string","value":"abcdefg"}, "key879":{"type":"string","value":"abcdefg"}, "key880":{"type":"string","value":"abcdefg"}, "key881":{"type":"string","value":"abcdefg"}, "key882":{"type":"string","value":"abcdefg"}, "key883":{"type":"string","value":"abcdefg"}, "key884":{"type":"string","value":"abcdefg"}, "key885":{"type":"string","value":"abcdefg"}, "key886":{"type":"string","value":"abcdefg"}, "key887":{"type":"string","value":"abcdefg"}, "key888":{"type":"string","value":"abcdefg"}, "key889":{"type":"string","value":"abcdefg"}, "key890":{"type":"string","value":"abcdefg"}, "key891":{"type":"string","value":"abcdefg"}, "key892":{"type":"string","value":"abcdefg"}, "key893":{"type":"string","value":"abcdefg"}, "key894":{"type":"string","value":"abcdefg"}, "key895":{"type":"string","value":"abcdefg"}, "key896":{"type":"string","value":"abcdefg"}, "key897":{"type":"string","value":"abcdefg"}, "key898":{"type":"string","value":"abcdefg"}, "key899":{"type":"string","value":"abcdefg"}, "key900":{"type":"string","value":"abcdefg"}, "key901":{"type":"string","value":"abcdefg"}, "key902":{"type":"string","value":"abcdefg"}, "key903":{"type":"string","value":"abcdefg"}, "key904":{"type":"string","value":"abcdefg"}, "key905":{"type":"string","value":"abcdefg"}, "key906":{"type":"string","value":"abcdefg"}, "key907":{"type":"string","value":"abcdefg"}, "key908":{"type":"string","value":"abcdefg"}, "key909":{"type":"string","value":"abcdefg"}, "key910":{"type":"string","value":"abcdefg"}, "key911":{"type":"string","value":"abcdefg"}, "key912":{"type":"string","value":"abcdefg"}, "key913":{"type":"string","value":"abcdefg"}, "key914":{"type":"string","value":"abcdefg"}, "key915":{"type":"string","value":"abcdefg"}, "key916":{"type":"string","value":"abcdefg"}, "key917":{"type":"string","value":"abcdefg"}, "key918":{"type":"string","value":"abcdefg"}, "key919":{"type":"string","value":"abcdefg"}, "key920":{"type":"string","value":"abcdefg"}, "key921":{"type":"string","value":"abcdefg"}, "key922":{"type":"string","value":"abcdefg"}, "key923":{"type":"string","value":"abcdefg"}, "key924":{"type":"string","value":"abcdefg"}, "key925":{"type":"string","value":"abcdefg"}, "key926":{"type":"string","value":"abcdefg"}, "key927":{"type":"string","value":"abcdefg"}, "key928":{"type":"string","value":"abcdefg"}, "key929":{"type":"string","value":"abcdefg"}, "key930":{"type":"string","value":"abcdefg"}, "key931":{"type":"string","value":"abcdefg"}, "key932":{"type":"string","value":"abcdefg"}, "key933":{"type":"string","value":"abcdefg"}, "key934":{"type":"string","value":"abcdefg"}, "key935":{"type":"string","value":"abcdefg"}, "key936":{"type":"string","value":"abcdefg"}, "key937":{"type":"string","value":"abcdefg"}, "key938":{"type":"string","value":"abcdefg"}, "key939":{"type":"string","value":"abcdefg"}, "key940":{"type":"string","value":"abcdefg"}, "key941":{"type":"string","value":"abcdefg"}, "key942":{"type":"string","value":"abcdefg"}, "key943":{"type":"string","value":"abcdefg"}, "key944":{"type":"string","value":"abcdefg"}, "key945":{"type":"string","value":"abcdefg"}, "key946":{"type":"string","value":"abcdefg"}, "key947":{"type":"string","value":"abcdefg"}, "key948":{"type":"string","value":"abcdefg"}, "key949":{"type":"string","value":"abcdefg"}, "key950":{"type":"string","value":"abcdefg"}, "key951":{"type":"string","value":"abcdefg"}, "key952":{"type":"string","value":"abcdefg"}, "key953":{"type":"string","value":"abcdefg"}, "key954":{"type":"string","value":"abcdefg"}, "key955":{"type":"string","value":"abcdefg"}, "key956":{"type":"string","value":"abcdefg"}, "key957":{"type":"string","value":"abcdefg"}, "key958":{"type":"string","value":"abcdefg"}, "key959":{"type":"string","value":"abcdefg"}, "key960":{"type":"string","value":"abcdefg"}, "key961":{"type":"string","value":"abcdefg"}, "key962":{"type":"string","value":"abcdefg"}, "key963":{"type":"string","value":"abcdefg"}, "key964":{"type":"string","value":"abcdefg"}, "key965":{"type":"string","value":"abcdefg"}, "key966":{"type":"string","value":"abcdefg"}, "key967":{"type":"string","value":"abcdefg"}, "key968":{"type":"string","value":"abcdefg"}, "key969":{"type":"string","value":"abcdefg"}, "key970":{"type":"string","value":"abcdefg"}, "key971":{"type":"string","value":"abcdefg"}, "key972":{"type":"string","value":"abcdefg"}, "key973":{"type":"string","value":"abcdefg"}, "key974":{"type":"string","value":"abcdefg"}, "key975":{"type":"string","value":"abcdefg"}, "key976":{"type":"string","value":"abcdefg"}, "key977":{"type":"string","value":"abcdefg"}, "key978":{"type":"string","value":"abcdefg"}, "key979":{"type":"string","value":"abcdefg"}, "key980":{"type":"string","value":"abcdefg"}, "key981":{"type":"string","value":"abcdefg"}, "key982":{"type":"string","value":"abcdefg"}, "key983":{"type":"string","value":"abcdefg"}, "key984":{"type":"string","value":"abcdefg"}, "key985":{"type":"string","value":"abcdefg"}, "key986":{"type":"string","value":"abcdefg"}, "key987":{"type":"string","value":"abcdefg"}, "key988":{"type":"string","value":"abcdefg"}, "key989":{"type":"string","value":"abcdefg"}, "key990":{"type":"string","value":"abcdefg"}, "key991":{"type":"string","value":"abcdefg"}, "key992":{"type":"string","value":"abcdefg"}, "key993":{"type":"string","value":"abcdefg"}, "key994":{"type":"string","value":"abcdefg"}, "key995":{"type":"string","value":"abcdefg"}, "key996":{"type":"string","value":"abcdefg"}, "key997":{"type":"string","value":"abcdefg"}, "key998":{"type":"string","value":"abcdefg"}, "key999":{"type":"string","value":"abcdefg"}, "key1000":{"type":"string","value":"abcdefg"}, "end":{"type":"boolean","value":"true"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-table-inline-1000.toml000066400000000000000000000467111413547640500266540ustar00rootroot00000000000000key = { key1 = "abcdefg", key2 = "abcdefg", key3 = "abcdefg", key4 = "abcdefg", key5 = "abcdefg", key6 = "abcdefg", key7 = "abcdefg", key8 = "abcdefg", key9 = "abcdefg", key10 = "abcdefg", key11 = "abcdefg", key12 = "abcdefg", key13 = "abcdefg", key14 = "abcdefg", key15 = "abcdefg", key16 = "abcdefg", key17 = "abcdefg", key18 = "abcdefg", key19 = "abcdefg", key20 = "abcdefg", key21 = "abcdefg", key22 = "abcdefg", key23 = "abcdefg", key24 = "abcdefg", key25 = "abcdefg", key26 = "abcdefg", key27 = "abcdefg", key28 = "abcdefg", key29 = "abcdefg", key30 = "abcdefg", key31 = "abcdefg", key32 = "abcdefg", key33 = "abcdefg", key34 = "abcdefg", key35 = "abcdefg", key36 = "abcdefg", key37 = "abcdefg", key38 = "abcdefg", key39 = "abcdefg", key40 = "abcdefg", key41 = "abcdefg", key42 = "abcdefg", key43 = "abcdefg", key44 = "abcdefg", key45 = "abcdefg", key46 = "abcdefg", key47 = "abcdefg", key48 = "abcdefg", key49 = "abcdefg", key50 = "abcdefg", key51 = "abcdefg", key52 = "abcdefg", key53 = "abcdefg", key54 = "abcdefg", key55 = "abcdefg", key56 = "abcdefg", key57 = "abcdefg", key58 = "abcdefg", key59 = "abcdefg", key60 = "abcdefg", key61 = "abcdefg", key62 = "abcdefg", key63 = "abcdefg", key64 = "abcdefg", key65 = "abcdefg", key66 = "abcdefg", key67 = "abcdefg", key68 = "abcdefg", key69 = "abcdefg", key70 = "abcdefg", key71 = "abcdefg", key72 = "abcdefg", key73 = "abcdefg", key74 = "abcdefg", key75 = "abcdefg", key76 = "abcdefg", key77 = "abcdefg", key78 = "abcdefg", key79 = "abcdefg", key80 = "abcdefg", key81 = "abcdefg", key82 = "abcdefg", key83 = "abcdefg", key84 = "abcdefg", key85 = "abcdefg", key86 = "abcdefg", key87 = "abcdefg", key88 = "abcdefg", key89 = "abcdefg", key90 = "abcdefg", key91 = "abcdefg", key92 = "abcdefg", key93 = "abcdefg", key94 = "abcdefg", key95 = "abcdefg", key96 = "abcdefg", key97 = "abcdefg", key98 = "abcdefg", key99 = "abcdefg", key100 = "abcdefg", key101 = "abcdefg", key102 = "abcdefg", key103 = "abcdefg", key104 = "abcdefg", key105 = "abcdefg", key106 = "abcdefg", key107 = "abcdefg", key108 = "abcdefg", key109 = "abcdefg", key110 = "abcdefg", key111 = "abcdefg", key112 = "abcdefg", key113 = "abcdefg", key114 = "abcdefg", key115 = "abcdefg", key116 = "abcdefg", key117 = "abcdefg", key118 = "abcdefg", key119 = "abcdefg", key120 = "abcdefg", key121 = "abcdefg", key122 = "abcdefg", key123 = "abcdefg", key124 = "abcdefg", key125 = "abcdefg", key126 = "abcdefg", key127 = "abcdefg", key128 = "abcdefg", key129 = "abcdefg", key130 = "abcdefg", key131 = "abcdefg", key132 = "abcdefg", key133 = "abcdefg", key134 = "abcdefg", key135 = "abcdefg", key136 = "abcdefg", key137 = "abcdefg", key138 = "abcdefg", key139 = "abcdefg", key140 = "abcdefg", key141 = "abcdefg", key142 = "abcdefg", key143 = "abcdefg", key144 = "abcdefg", key145 = "abcdefg", key146 = "abcdefg", key147 = "abcdefg", key148 = "abcdefg", key149 = "abcdefg", key150 = "abcdefg", key151 = "abcdefg", key152 = "abcdefg", key153 = "abcdefg", key154 = "abcdefg", key155 = "abcdefg", key156 = "abcdefg", key157 = "abcdefg", key158 = "abcdefg", key159 = "abcdefg", key160 = "abcdefg", key161 = "abcdefg", key162 = "abcdefg", key163 = "abcdefg", key164 = "abcdefg", key165 = "abcdefg", key166 = "abcdefg", key167 = "abcdefg", key168 = "abcdefg", key169 = "abcdefg", key170 = "abcdefg", key171 = "abcdefg", key172 = "abcdefg", key173 = "abcdefg", key174 = "abcdefg", key175 = "abcdefg", key176 = "abcdefg", key177 = "abcdefg", key178 = "abcdefg", key179 = "abcdefg", key180 = "abcdefg", key181 = "abcdefg", key182 = "abcdefg", key183 = "abcdefg", key184 = "abcdefg", key185 = "abcdefg", key186 = "abcdefg", key187 = "abcdefg", key188 = "abcdefg", key189 = "abcdefg", key190 = "abcdefg", key191 = "abcdefg", key192 = "abcdefg", key193 = "abcdefg", key194 = "abcdefg", key195 = "abcdefg", key196 = "abcdefg", key197 = "abcdefg", key198 = "abcdefg", key199 = "abcdefg", key200 = "abcdefg", key201 = "abcdefg", key202 = "abcdefg", key203 = "abcdefg", key204 = "abcdefg", key205 = "abcdefg", key206 = "abcdefg", key207 = "abcdefg", key208 = "abcdefg", key209 = "abcdefg", key210 = "abcdefg", key211 = "abcdefg", key212 = "abcdefg", key213 = "abcdefg", key214 = "abcdefg", key215 = "abcdefg", key216 = "abcdefg", key217 = "abcdefg", key218 = "abcdefg", key219 = "abcdefg", key220 = "abcdefg", key221 = "abcdefg", key222 = "abcdefg", key223 = "abcdefg", key224 = "abcdefg", key225 = "abcdefg", key226 = "abcdefg", key227 = "abcdefg", key228 = "abcdefg", key229 = "abcdefg", key230 = "abcdefg", key231 = "abcdefg", key232 = "abcdefg", key233 = "abcdefg", key234 = "abcdefg", key235 = "abcdefg", key236 = "abcdefg", key237 = "abcdefg", key238 = "abcdefg", key239 = "abcdefg", key240 = "abcdefg", key241 = "abcdefg", key242 = "abcdefg", key243 = "abcdefg", key244 = "abcdefg", key245 = "abcdefg", key246 = "abcdefg", key247 = "abcdefg", key248 = "abcdefg", key249 = "abcdefg", key250 = "abcdefg", key251 = "abcdefg", key252 = "abcdefg", key253 = "abcdefg", key254 = "abcdefg", key255 = "abcdefg", key256 = "abcdefg", key257 = "abcdefg", key258 = "abcdefg", key259 = "abcdefg", key260 = "abcdefg", key261 = "abcdefg", key262 = "abcdefg", key263 = "abcdefg", key264 = "abcdefg", key265 = "abcdefg", key266 = "abcdefg", key267 = "abcdefg", key268 = "abcdefg", key269 = "abcdefg", key270 = "abcdefg", key271 = "abcdefg", key272 = "abcdefg", key273 = "abcdefg", key274 = "abcdefg", key275 = "abcdefg", key276 = "abcdefg", key277 = "abcdefg", key278 = "abcdefg", key279 = "abcdefg", key280 = "abcdefg", key281 = "abcdefg", key282 = "abcdefg", key283 = "abcdefg", key284 = "abcdefg", key285 = "abcdefg", key286 = "abcdefg", key287 = "abcdefg", key288 = "abcdefg", key289 = "abcdefg", key290 = "abcdefg", key291 = "abcdefg", key292 = "abcdefg", key293 = "abcdefg", key294 = "abcdefg", key295 = "abcdefg", key296 = "abcdefg", key297 = "abcdefg", key298 = "abcdefg", key299 = "abcdefg", key300 = "abcdefg", key301 = "abcdefg", key302 = "abcdefg", key303 = "abcdefg", key304 = "abcdefg", key305 = "abcdefg", key306 = "abcdefg", key307 = "abcdefg", key308 = "abcdefg", key309 = "abcdefg", key310 = "abcdefg", key311 = "abcdefg", key312 = "abcdefg", key313 = "abcdefg", key314 = "abcdefg", key315 = "abcdefg", key316 = "abcdefg", key317 = "abcdefg", key318 = "abcdefg", key319 = "abcdefg", key320 = "abcdefg", key321 = "abcdefg", key322 = "abcdefg", key323 = "abcdefg", key324 = "abcdefg", key325 = "abcdefg", key326 = "abcdefg", key327 = "abcdefg", key328 = "abcdefg", key329 = "abcdefg", key330 = "abcdefg", key331 = "abcdefg", key332 = "abcdefg", key333 = "abcdefg", key334 = "abcdefg", key335 = "abcdefg", key336 = "abcdefg", key337 = "abcdefg", key338 = "abcdefg", key339 = "abcdefg", key340 = "abcdefg", key341 = "abcdefg", key342 = "abcdefg", key343 = "abcdefg", key344 = "abcdefg", key345 = "abcdefg", key346 = "abcdefg", key347 = "abcdefg", key348 = "abcdefg", key349 = "abcdefg", key350 = "abcdefg", key351 = "abcdefg", key352 = "abcdefg", key353 = "abcdefg", key354 = "abcdefg", key355 = "abcdefg", key356 = "abcdefg", key357 = "abcdefg", key358 = "abcdefg", key359 = "abcdefg", key360 = "abcdefg", key361 = "abcdefg", key362 = "abcdefg", key363 = "abcdefg", key364 = "abcdefg", key365 = "abcdefg", key366 = "abcdefg", key367 = "abcdefg", key368 = "abcdefg", key369 = "abcdefg", key370 = "abcdefg", key371 = "abcdefg", key372 = "abcdefg", key373 = "abcdefg", key374 = "abcdefg", key375 = "abcdefg", key376 = "abcdefg", key377 = "abcdefg", key378 = "abcdefg", key379 = "abcdefg", key380 = "abcdefg", key381 = "abcdefg", key382 = "abcdefg", key383 = "abcdefg", key384 = "abcdefg", key385 = "abcdefg", key386 = "abcdefg", key387 = "abcdefg", key388 = "abcdefg", key389 = "abcdefg", key390 = "abcdefg", key391 = "abcdefg", key392 = "abcdefg", key393 = "abcdefg", key394 = "abcdefg", key395 = "abcdefg", key396 = "abcdefg", key397 = "abcdefg", key398 = "abcdefg", key399 = "abcdefg", key400 = "abcdefg", key401 = "abcdefg", key402 = "abcdefg", key403 = "abcdefg", key404 = "abcdefg", key405 = "abcdefg", key406 = "abcdefg", key407 = "abcdefg", key408 = "abcdefg", key409 = "abcdefg", key410 = "abcdefg", key411 = "abcdefg", key412 = "abcdefg", key413 = "abcdefg", key414 = "abcdefg", key415 = "abcdefg", key416 = "abcdefg", key417 = "abcdefg", key418 = "abcdefg", key419 = "abcdefg", key420 = "abcdefg", key421 = "abcdefg", key422 = "abcdefg", key423 = "abcdefg", key424 = "abcdefg", key425 = "abcdefg", key426 = "abcdefg", key427 = "abcdefg", key428 = "abcdefg", key429 = "abcdefg", key430 = "abcdefg", key431 = "abcdefg", key432 = "abcdefg", key433 = "abcdefg", key434 = "abcdefg", key435 = "abcdefg", key436 = "abcdefg", key437 = "abcdefg", key438 = "abcdefg", key439 = "abcdefg", key440 = "abcdefg", key441 = "abcdefg", key442 = "abcdefg", key443 = "abcdefg", key444 = "abcdefg", key445 = "abcdefg", key446 = "abcdefg", key447 = "abcdefg", key448 = "abcdefg", key449 = "abcdefg", key450 = "abcdefg", key451 = "abcdefg", key452 = "abcdefg", key453 = "abcdefg", key454 = "abcdefg", key455 = "abcdefg", key456 = "abcdefg", key457 = "abcdefg", key458 = "abcdefg", key459 = "abcdefg", key460 = "abcdefg", key461 = "abcdefg", key462 = "abcdefg", key463 = "abcdefg", key464 = "abcdefg", key465 = "abcdefg", key466 = "abcdefg", key467 = "abcdefg", key468 = "abcdefg", key469 = "abcdefg", key470 = "abcdefg", key471 = "abcdefg", key472 = "abcdefg", key473 = "abcdefg", key474 = "abcdefg", key475 = "abcdefg", key476 = "abcdefg", key477 = "abcdefg", key478 = "abcdefg", key479 = "abcdefg", key480 = "abcdefg", key481 = "abcdefg", key482 = "abcdefg", key483 = "abcdefg", key484 = "abcdefg", key485 = "abcdefg", key486 = "abcdefg", key487 = "abcdefg", key488 = "abcdefg", key489 = "abcdefg", key490 = "abcdefg", key491 = "abcdefg", key492 = "abcdefg", key493 = "abcdefg", key494 = "abcdefg", key495 = "abcdefg", key496 = "abcdefg", key497 = "abcdefg", key498 = "abcdefg", key499 = "abcdefg", key500 = "abcdefg", key501 = "abcdefg", key502 = "abcdefg", key503 = "abcdefg", key504 = "abcdefg", key505 = "abcdefg", key506 = "abcdefg", key507 = "abcdefg", key508 = "abcdefg", key509 = "abcdefg", key510 = "abcdefg", key511 = "abcdefg", key512 = "abcdefg", key513 = "abcdefg", key514 = "abcdefg", key515 = "abcdefg", key516 = "abcdefg", key517 = "abcdefg", key518 = "abcdefg", key519 = "abcdefg", key520 = "abcdefg", key521 = "abcdefg", key522 = "abcdefg", key523 = "abcdefg", key524 = "abcdefg", key525 = "abcdefg", key526 = "abcdefg", key527 = "abcdefg", key528 = "abcdefg", key529 = "abcdefg", key530 = "abcdefg", key531 = "abcdefg", key532 = "abcdefg", key533 = "abcdefg", key534 = "abcdefg", key535 = "abcdefg", key536 = "abcdefg", key537 = "abcdefg", key538 = "abcdefg", key539 = "abcdefg", key540 = "abcdefg", key541 = "abcdefg", key542 = "abcdefg", key543 = "abcdefg", key544 = "abcdefg", key545 = "abcdefg", key546 = "abcdefg", key547 = "abcdefg", key548 = "abcdefg", key549 = "abcdefg", key550 = "abcdefg", key551 = "abcdefg", key552 = "abcdefg", key553 = "abcdefg", key554 = "abcdefg", key555 = "abcdefg", key556 = "abcdefg", key557 = "abcdefg", key558 = "abcdefg", key559 = "abcdefg", key560 = "abcdefg", key561 = "abcdefg", key562 = "abcdefg", key563 = "abcdefg", key564 = "abcdefg", key565 = "abcdefg", key566 = "abcdefg", key567 = "abcdefg", key568 = "abcdefg", key569 = "abcdefg", key570 = "abcdefg", key571 = "abcdefg", key572 = "abcdefg", key573 = "abcdefg", key574 = "abcdefg", key575 = "abcdefg", key576 = "abcdefg", key577 = "abcdefg", key578 = "abcdefg", key579 = "abcdefg", key580 = "abcdefg", key581 = "abcdefg", key582 = "abcdefg", key583 = "abcdefg", key584 = "abcdefg", key585 = "abcdefg", key586 = "abcdefg", key587 = "abcdefg", key588 = "abcdefg", key589 = "abcdefg", key590 = "abcdefg", key591 = "abcdefg", key592 = "abcdefg", key593 = "abcdefg", key594 = "abcdefg", key595 = "abcdefg", key596 = "abcdefg", key597 = "abcdefg", key598 = "abcdefg", key599 = "abcdefg", key600 = "abcdefg", key601 = "abcdefg", key602 = "abcdefg", key603 = "abcdefg", key604 = "abcdefg", key605 = "abcdefg", key606 = "abcdefg", key607 = "abcdefg", key608 = "abcdefg", key609 = "abcdefg", key610 = "abcdefg", key611 = "abcdefg", key612 = "abcdefg", key613 = "abcdefg", key614 = "abcdefg", key615 = "abcdefg", key616 = "abcdefg", key617 = "abcdefg", key618 = "abcdefg", key619 = "abcdefg", key620 = "abcdefg", key621 = "abcdefg", key622 = "abcdefg", key623 = "abcdefg", key624 = "abcdefg", key625 = "abcdefg", key626 = "abcdefg", key627 = "abcdefg", key628 = "abcdefg", key629 = "abcdefg", key630 = "abcdefg", key631 = "abcdefg", key632 = "abcdefg", key633 = "abcdefg", key634 = "abcdefg", key635 = "abcdefg", key636 = "abcdefg", key637 = "abcdefg", key638 = "abcdefg", key639 = "abcdefg", key640 = "abcdefg", key641 = "abcdefg", key642 = "abcdefg", key643 = "abcdefg", key644 = "abcdefg", key645 = "abcdefg", key646 = "abcdefg", key647 = "abcdefg", key648 = "abcdefg", key649 = "abcdefg", key650 = "abcdefg", key651 = "abcdefg", key652 = "abcdefg", key653 = "abcdefg", key654 = "abcdefg", key655 = "abcdefg", key656 = "abcdefg", key657 = "abcdefg", key658 = "abcdefg", key659 = "abcdefg", key660 = "abcdefg", key661 = "abcdefg", key662 = "abcdefg", key663 = "abcdefg", key664 = "abcdefg", key665 = "abcdefg", key666 = "abcdefg", key667 = "abcdefg", key668 = "abcdefg", key669 = "abcdefg", key670 = "abcdefg", key671 = "abcdefg", key672 = "abcdefg", key673 = "abcdefg", key674 = "abcdefg", key675 = "abcdefg", key676 = "abcdefg", key677 = "abcdefg", key678 = "abcdefg", key679 = "abcdefg", key680 = "abcdefg", key681 = "abcdefg", key682 = "abcdefg", key683 = "abcdefg", key684 = "abcdefg", key685 = "abcdefg", key686 = "abcdefg", key687 = "abcdefg", key688 = "abcdefg", key689 = "abcdefg", key690 = "abcdefg", key691 = "abcdefg", key692 = "abcdefg", key693 = "abcdefg", key694 = "abcdefg", key695 = "abcdefg", key696 = "abcdefg", key697 = "abcdefg", key698 = "abcdefg", key699 = "abcdefg", key700 = "abcdefg", key701 = "abcdefg", key702 = "abcdefg", key703 = "abcdefg", key704 = "abcdefg", key705 = "abcdefg", key706 = "abcdefg", key707 = "abcdefg", key708 = "abcdefg", key709 = "abcdefg", key710 = "abcdefg", key711 = "abcdefg", key712 = "abcdefg", key713 = "abcdefg", key714 = "abcdefg", key715 = "abcdefg", key716 = "abcdefg", key717 = "abcdefg", key718 = "abcdefg", key719 = "abcdefg", key720 = "abcdefg", key721 = "abcdefg", key722 = "abcdefg", key723 = "abcdefg", key724 = "abcdefg", key725 = "abcdefg", key726 = "abcdefg", key727 = "abcdefg", key728 = "abcdefg", key729 = "abcdefg", key730 = "abcdefg", key731 = "abcdefg", key732 = "abcdefg", key733 = "abcdefg", key734 = "abcdefg", key735 = "abcdefg", key736 = "abcdefg", key737 = "abcdefg", key738 = "abcdefg", key739 = "abcdefg", key740 = "abcdefg", key741 = "abcdefg", key742 = "abcdefg", key743 = "abcdefg", key744 = "abcdefg", key745 = "abcdefg", key746 = "abcdefg", key747 = "abcdefg", key748 = "abcdefg", key749 = "abcdefg", key750 = "abcdefg", key751 = "abcdefg", key752 = "abcdefg", key753 = "abcdefg", key754 = "abcdefg", key755 = "abcdefg", key756 = "abcdefg", key757 = "abcdefg", key758 = "abcdefg", key759 = "abcdefg", key760 = "abcdefg", key761 = "abcdefg", key762 = "abcdefg", key763 = "abcdefg", key764 = "abcdefg", key765 = "abcdefg", key766 = "abcdefg", key767 = "abcdefg", key768 = "abcdefg", key769 = "abcdefg", key770 = "abcdefg", key771 = "abcdefg", key772 = "abcdefg", key773 = "abcdefg", key774 = "abcdefg", key775 = "abcdefg", key776 = "abcdefg", key777 = "abcdefg", key778 = "abcdefg", key779 = "abcdefg", key780 = "abcdefg", key781 = "abcdefg", key782 = "abcdefg", key783 = "abcdefg", key784 = "abcdefg", key785 = "abcdefg", key786 = "abcdefg", key787 = "abcdefg", key788 = "abcdefg", key789 = "abcdefg", key790 = "abcdefg", key791 = "abcdefg", key792 = "abcdefg", key793 = "abcdefg", key794 = "abcdefg", key795 = "abcdefg", key796 = "abcdefg", key797 = "abcdefg", key798 = "abcdefg", key799 = "abcdefg", key800 = "abcdefg", key801 = "abcdefg", key802 = "abcdefg", key803 = "abcdefg", key804 = "abcdefg", key805 = "abcdefg", key806 = "abcdefg", key807 = "abcdefg", key808 = "abcdefg", key809 = "abcdefg", key810 = "abcdefg", key811 = "abcdefg", key812 = "abcdefg", key813 = "abcdefg", key814 = "abcdefg", key815 = "abcdefg", key816 = "abcdefg", key817 = "abcdefg", key818 = "abcdefg", key819 = "abcdefg", key820 = "abcdefg", key821 = "abcdefg", key822 = "abcdefg", key823 = "abcdefg", key824 = "abcdefg", key825 = "abcdefg", key826 = "abcdefg", key827 = "abcdefg", key828 = "abcdefg", key829 = "abcdefg", key830 = "abcdefg", key831 = "abcdefg", key832 = "abcdefg", key833 = "abcdefg", key834 = "abcdefg", key835 = "abcdefg", key836 = "abcdefg", key837 = "abcdefg", key838 = "abcdefg", key839 = "abcdefg", key840 = "abcdefg", key841 = "abcdefg", key842 = "abcdefg", key843 = "abcdefg", key844 = "abcdefg", key845 = "abcdefg", key846 = "abcdefg", key847 = "abcdefg", key848 = "abcdefg", key849 = "abcdefg", key850 = "abcdefg", key851 = "abcdefg", key852 = "abcdefg", key853 = "abcdefg", key854 = "abcdefg", key855 = "abcdefg", key856 = "abcdefg", key857 = "abcdefg", key858 = "abcdefg", key859 = "abcdefg", key860 = "abcdefg", key861 = "abcdefg", key862 = "abcdefg", key863 = "abcdefg", key864 = "abcdefg", key865 = "abcdefg", key866 = "abcdefg", key867 = "abcdefg", key868 = "abcdefg", key869 = "abcdefg", key870 = "abcdefg", key871 = "abcdefg", key872 = "abcdefg", key873 = "abcdefg", key874 = "abcdefg", key875 = "abcdefg", key876 = "abcdefg", key877 = "abcdefg", key878 = "abcdefg", key879 = "abcdefg", key880 = "abcdefg", key881 = "abcdefg", key882 = "abcdefg", key883 = "abcdefg", key884 = "abcdefg", key885 = "abcdefg", key886 = "abcdefg", key887 = "abcdefg", key888 = "abcdefg", key889 = "abcdefg", key890 = "abcdefg", key891 = "abcdefg", key892 = "abcdefg", key893 = "abcdefg", key894 = "abcdefg", key895 = "abcdefg", key896 = "abcdefg", key897 = "abcdefg", key898 = "abcdefg", key899 = "abcdefg", key900 = "abcdefg", key901 = "abcdefg", key902 = "abcdefg", key903 = "abcdefg", key904 = "abcdefg", key905 = "abcdefg", key906 = "abcdefg", key907 = "abcdefg", key908 = "abcdefg", key909 = "abcdefg", key910 = "abcdefg", key911 = "abcdefg", key912 = "abcdefg", key913 = "abcdefg", key914 = "abcdefg", key915 = "abcdefg", key916 = "abcdefg", key917 = "abcdefg", key918 = "abcdefg", key919 = "abcdefg", key920 = "abcdefg", key921 = "abcdefg", key922 = "abcdefg", key923 = "abcdefg", key924 = "abcdefg", key925 = "abcdefg", key926 = "abcdefg", key927 = "abcdefg", key928 = "abcdefg", key929 = "abcdefg", key930 = "abcdefg", key931 = "abcdefg", key932 = "abcdefg", key933 = "abcdefg", key934 = "abcdefg", key935 = "abcdefg", key936 = "abcdefg", key937 = "abcdefg", key938 = "abcdefg", key939 = "abcdefg", key940 = "abcdefg", key941 = "abcdefg", key942 = "abcdefg", key943 = "abcdefg", key944 = "abcdefg", key945 = "abcdefg", key946 = "abcdefg", key947 = "abcdefg", key948 = "abcdefg", key949 = "abcdefg", key950 = "abcdefg", key951 = "abcdefg", key952 = "abcdefg", key953 = "abcdefg", key954 = "abcdefg", key955 = "abcdefg", key956 = "abcdefg", key957 = "abcdefg", key958 = "abcdefg", key959 = "abcdefg", key960 = "abcdefg", key961 = "abcdefg", key962 = "abcdefg", key963 = "abcdefg", key964 = "abcdefg", key965 = "abcdefg", key966 = "abcdefg", key967 = "abcdefg", key968 = "abcdefg", key969 = "abcdefg", key970 = "abcdefg", key971 = "abcdefg", key972 = "abcdefg", key973 = "abcdefg", key974 = "abcdefg", key975 = "abcdefg", key976 = "abcdefg", key977 = "abcdefg", key978 = "abcdefg", key979 = "abcdefg", key980 = "abcdefg", key981 = "abcdefg", key982 = "abcdefg", key983 = "abcdefg", key984 = "abcdefg", key985 = "abcdefg", key986 = "abcdefg", key987 = "abcdefg", key988 = "abcdefg", key989 = "abcdefg", key990 = "abcdefg", key991 = "abcdefg", key992 = "abcdefg", key993 = "abcdefg", key994 = "abcdefg", key995 = "abcdefg", key996 = "abcdefg", key997 = "abcdefg", key998 = "abcdefg", key999 = "abcdefg", key1000 = "abcdefg", end = true} tomli-1.2.2/tests/data/toml-lang-compliance/valid/qa/qa-table-inline-nested-1000.toml000066400000000000000000000175121413547640500301310ustar00rootroot00000000000000key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {key = {}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} } tomli-1.2.2/tests/data/toml-lang-compliance/valid/spec-readme-example.json000066400000000000000000000023631413547640500265420ustar00rootroot00000000000000{"title": {"type":"string","value":"TOML Example"}, "owner": {"name": {"type":"string","value":"Tom Preston-Werner"}, "dob": {"type":"offset datetime","value":"1979-05-27T07:32:00-08:00"}}, "database": {"server": {"type":"string","value":"192.168.1.1"}, "ports": {"type":"array","value":[ {"type":"integer","value":"8001"}, {"type":"integer","value":"8001"}, {"type":"integer","value":"8002"}]}, "connection_max": {"type":"integer","value":"5000"}, "enabled": {"type":"boolean","value":"true"}}, "servers": {"alpha": {"ip": {"type":"string","value":"10.0.0.1"}, "dc": {"type":"string","value":"eqdc10"}}, "beta": {"ip": {"type":"string","value":"10.0.0.2"}, "dc": {"type":"string","value":"eqdc10"}}}, "clients": {"data": {"type":"array","value":[ {"type":"array","value":[ {"type":"string","value":"gamma"}, {"type":"string","value":"delta"}]}, {"type":"array","value":[ {"type":"integer","value":"1"}, {"type":"integer","value":"2"}]}]}, "hosts": {"type":"array","value":[ {"type":"string","value":"alpha"}, {"type":"string","value":"omega"}]}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/spec-readme-example.toml000066400000000000000000000010411413547640500265340ustar00rootroot00000000000000# This is a TOML document. title = "TOML Example" [owner] name = "Tom Preston-Werner" dob = 1979-05-27T07:32:00-08:00 # First class dates [database] server = "192.168.1.1" ports = [ 8001, 8001, 8002 ] connection_max = 5000 enabled = true [servers] # Indentation (tabs and/or spaces) is allowed but not required [servers.alpha] ip = "10.0.0.1" dc = "eqdc10" [servers.beta] ip = "10.0.0.2" dc = "eqdc10" [clients] data = [ ["gamma", "delta"], [1, 2] ] # Line breaks are OK when inside arrays hosts = [ "alpha", "omega" ] tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/000077500000000000000000000000001413547640500233335ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-1.json000066400000000000000000000001101413547640500316710ustar00rootroot00000000000000{"str1": {"type":"string","value":"Roses are red\nViolets are blue"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-1.toml000066400000000000000000000000551413547640500317030ustar00rootroot00000000000000str1 = """ Roses are red Violets are blue""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-2.json000066400000000000000000000001241413547640500316770ustar00rootroot00000000000000{"str": {"type":"string","value":"The quick brown fox jumps over the lazy dog."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-2.toml000066400000000000000000000001061413547640500317010ustar00rootroot00000000000000str = """ The quick brown \ fox jumps over \ the lazy dog.""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-3.json000066400000000000000000000001241413547640500317000ustar00rootroot00000000000000{"str": {"type":"string","value":"The quick brown fox jumps over the lazy dog."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-3.toml000066400000000000000000000001311413547640500317000ustar00rootroot00000000000000str = """\ The quick brown \ fox jumps over \ the lazy dog.\ """ tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-4.json000066400000000000000000000000541413547640500317030ustar00rootroot00000000000000{"a": {"type":"string","value":"abcdef"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-4.toml000066400000000000000000000000261413547640500317040ustar00rootroot00000000000000a = """abc\ def""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-5.json000066400000000000000000000001141413547640500317010ustar00rootroot00000000000000{"ml-escaped-nl": {"type":"string","value":" foo bar \\\n baz \\quux"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-5.toml000066400000000000000000000000711413547640500317050ustar00rootroot00000000000000ml-escaped-nl = """ foo \ bar \\ baz \\\ quux""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-6.json000066400000000000000000000001331413547640500317030ustar00rootroot00000000000000{"str4": {"type":"string","value":"Here are two quotation marks: \"\". Simple enough."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-6.toml000066400000000000000000000000761413547640500317130ustar00rootroot00000000000000str4 = """Here are two quotation marks: "". Simple enough.""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-7.json000066400000000000000000000001201413547640500317000ustar00rootroot00000000000000{"str5": {"type":"string","value":"Here are three quotation marks: \"\"\"."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-7.toml000066400000000000000000000000631413547640500317100ustar00rootroot00000000000000str5 = """Here are three quotation marks: ""\".""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-8.json000066400000000000000000000001521413547640500317060ustar00rootroot00000000000000{"str6": {"type":"string","value":"Here are fifteen quotation marks: \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-8.toml000066400000000000000000000001051413547640500317060ustar00rootroot00000000000000str6 = """Here are fifteen quotation marks: ""\"""\"""\"""\"""\".""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-9.json000066400000000000000000000001371413547640500317120ustar00rootroot00000000000000{"str7": {"type":"string","value":"\"This,\" she said, \"is just a pointless statement.\""}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-multiline-9.toml000066400000000000000000000001001413547640500317020ustar00rootroot00000000000000str7 = """"This," she said, "is just a pointless statement."""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-tab-multiline.json000066400000000000000000000000661413547640500323110ustar00rootroot00000000000000{"str": {"type":"string","value":"This is a\ttab"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-tab-multiline.toml000066400000000000000000000000321413547640500323040ustar00rootroot00000000000000str = """This is a tab""" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-tab.json000066400000000000000000000000661413547640500303110ustar00rootroot00000000000000{"str": {"type":"string","value":"This is a\ttab"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic-tab.toml000066400000000000000000000000261413547640500303070ustar00rootroot00000000000000str = "This is a tab" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic.json000066400000000000000000000001521413547640500275410ustar00rootroot00000000000000{"str": {"type":"string","value":"I'm a string. \"You can quote me\". Name\tJos\u00E9\nLocation\tSF."}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-basic.toml000066400000000000000000000001131413547640500275400ustar00rootroot00000000000000str = "I'm a string. \"You can quote me\". Name\tJos\u00E9\nLocation\tSF." tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-1.json000066400000000000000000000000501413547640500300530ustar00rootroot00000000000000{"a": {"type":"string","value":"\b"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-1.toml000066400000000000000000000000111413547640500300520ustar00rootroot00000000000000a = "\b" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-2.json000066400000000000000000000000501413547640500300540ustar00rootroot00000000000000{"a": {"type":"string","value":"\t"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-2.toml000066400000000000000000000000111413547640500300530ustar00rootroot00000000000000a = "\t" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-3.json000066400000000000000000000000501413547640500300550ustar00rootroot00000000000000{"a": {"type":"string","value":"\n"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-3.toml000066400000000000000000000000111413547640500300540ustar00rootroot00000000000000a = "\n" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-4.json000066400000000000000000000000501413547640500300560ustar00rootroot00000000000000{"a": {"type":"string","value":"\f"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-4.toml000066400000000000000000000000111413547640500300550ustar00rootroot00000000000000a = "\f" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-5.json000066400000000000000000000000501413547640500300570ustar00rootroot00000000000000{"a": {"type":"string","value":"\r"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-5.toml000066400000000000000000000000111413547640500300560ustar00rootroot00000000000000a = "\r" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-6.json000066400000000000000000000000501413547640500300600ustar00rootroot00000000000000{"a": {"type":"string","value":"\""}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-6.toml000066400000000000000000000000111413547640500300570ustar00rootroot00000000000000a = "\"" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-7.json000066400000000000000000000000501413547640500300610ustar00rootroot00000000000000{"a": {"type":"string","value":"\\"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-7.toml000066400000000000000000000000111413547640500300600ustar00rootroot00000000000000a = "\\" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-8.json000066400000000000000000000000541413547640500300660ustar00rootroot00000000000000{"a": {"type":"string","value":"\u0000"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-8.toml000066400000000000000000000000151413547640500300650ustar00rootroot00000000000000a = "\u0000" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-9.json000066400000000000000000000000541413547640500300670ustar00rootroot00000000000000{"a": {"type":"string","value":"\u0000"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-escape-9.toml000066400000000000000000000000211413547640500300630ustar00rootroot00000000000000a = "\U00000000" tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-1.json000066400000000000000000000001101413547640500302440ustar00rootroot00000000000000{"winpath": {"type":"string","value":"C:\\Users\\nodejs\\templates"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-1.toml000066400000000000000000000000471413547640500302570ustar00rootroot00000000000000winpath = 'C:\Users\nodejs\templates' tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-2.json000066400000000000000000000001141413547640500302510ustar00rootroot00000000000000{"winpath2": {"type":"string","value":"\\\\ServerX\\admin$\\system32\\"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-2.toml000066400000000000000000000000501413547640500302520ustar00rootroot00000000000000winpath2 = '\\ServerX\admin$\system32\' tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-3.json000066400000000000000000000001061413547640500302530ustar00rootroot00000000000000{"quoted": {"type":"string","value":"Tom \"Dubs\" Preston-Werner"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-3.toml000066400000000000000000000000471413547640500302610ustar00rootroot00000000000000quoted = 'Tom "Dubs" Preston-Werner' tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-4.json000066400000000000000000000000671413547640500302620ustar00rootroot00000000000000{"regex": {"type":"string","value":"<\\i\\c*\\s*>"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-4.toml000066400000000000000000000000301413547640500302520ustar00rootroot00000000000000regex = '<\i\c*\s*>' tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-multiline-1.json000066400000000000000000000001101413547640500322440ustar00rootroot00000000000000{"regex2": {"type":"string","value":"I [dw]on't need \\d{2} apples"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-multiline-1.toml000066400000000000000000000000541413547640500322550ustar00rootroot00000000000000regex2 = '''I [dw]on't need \d{2} apples''' tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-multiline-2.json000066400000000000000000000002041413547640500322510ustar00rootroot00000000000000{"lines": {"type":"string","value":"The first newline is\ntrimmed in raw strings.\n All other whitespace\n is preserved.\n"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-multiline-2.toml000066400000000000000000000001471413547640500322610ustar00rootroot00000000000000lines = ''' The first newline is trimmed in raw strings. All other whitespace is preserved. ''' tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-multiline-3.json000066400000000000000000000001531413547640500322550ustar00rootroot00000000000000{"quot15": {"type":"string","value":"Here are fifteen quotation marks: \"\"\"\"\"\"\"\"\"\"\"\"\"\"\""}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-multiline-3.toml000066400000000000000000000001011413547640500322500ustar00rootroot00000000000000quot15 = '''Here are fifteen quotation marks: """""""""""""""''' tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-multiline-4.json000066400000000000000000000001171413547640500322560ustar00rootroot00000000000000{"str": {"type":"string","value":"'That,' she said, 'is still pointless.'"}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/string/spec-string-literal-multiline-4.toml000066400000000000000000000000641413547640500322610ustar00rootroot00000000000000str = ''''That,' she said, 'is still pointless.'''' tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/000077500000000000000000000000001413547640500231145ustar00rootroot00000000000000tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-extend-dotted-object-1.json000066400000000000000000000002011413547640500311020ustar00rootroot00000000000000{"fruit": {"apple": {"smooth": {"type":"boolean","value":"true"}}, "orange": {"type":"integer","value":"2"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-extend-dotted-object-1.toml000066400000000000000000000002131413547640500311070ustar00rootroot00000000000000# This makes the key "fruit" into a table. fruit.apple.smooth = true # So then you can add to the table "fruit" like so: fruit.orange = 2 tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-extend-dotted-object-2.json000066400000000000000000000005031413547640500311100ustar00rootroot00000000000000{"apple": {"type": {"type":"string","value":"fruit"}, "skin": {"type":"string","value":"thin"}, "color": {"type":"string","value":"red"}}, "orange": {"type": {"type":"string","value":"fruit"}, "skin": {"type":"string","value":"thick"}, "color": {"type":"string","value":"orange"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-extend-dotted-object-2.toml000066400000000000000000000002341413547640500311130ustar00rootroot00000000000000# VALID BUT DISCOURAGED apple.type = "fruit" orange.type = "fruit" apple.skin = "thin" orange.skin = "thick" apple.color = "red" orange.color = "orange" tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-extend-dotted-object-3.json000066400000000000000000000005031413547640500311110ustar00rootroot00000000000000{"apple": {"type": {"type":"string","value":"fruit"}, "skin": {"type":"string","value":"thin"}, "color": {"type":"string","value":"red"}}, "orange": {"type": {"type":"string","value":"fruit"}, "skin": {"type":"string","value":"thick"}, "color": {"type":"string","value":"orange"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-extend-dotted-object-3.toml000066400000000000000000000002211413547640500311100ustar00rootroot00000000000000# RECOMMENDED apple.type = "fruit" apple.skin = "thin" apple.color = "red" orange.type = "fruit" orange.skin = "thick" orange.color = "orange" tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-1.json000066400000000000000000000003571413547640500261710ustar00rootroot00000000000000{"table-1": {"key1": {"type":"string","value":"some string"}, "key2": {"type":"integer","value":"123"}}, "table-2": {"key1": {"type":"string","value":"another string"}, "key2": {"type":"integer","value":"456"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-1.toml000066400000000000000000000001301413547640500261600ustar00rootroot00000000000000[table-1] key1 = "some string" key2 = 123 [table-2] key1 = "another string" key2 = 456 tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-2.json000066400000000000000000000001401413547640500261600ustar00rootroot00000000000000{"dog": {"tater.man": {"type": {"name": {"type":"string","value":"pug"}}}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-2.toml000066400000000000000000000000441413547640500261650ustar00rootroot00000000000000[dog."tater.man"] type.name = "pug" tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-3.json000066400000000000000000000000441413547640500261640ustar00rootroot00000000000000{"a": {"b": {"c": {}}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-3.toml000066400000000000000000000000101413547640500261570ustar00rootroot00000000000000[a.b.c] tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-4.json000066400000000000000000000000441413547640500261650ustar00rootroot00000000000000{"d": {"e": {"f": {}}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-4.toml000066400000000000000000000000451413547640500261700ustar00rootroot00000000000000[ d.e.f ] # same as [d.e.f] tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-5.json000066400000000000000000000000441413547640500261660ustar00rootroot00000000000000{"g": {"h": {"i": {}}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-5.toml000066400000000000000000000000451413547640500261710ustar00rootroot00000000000000[ g . h . i ] # same as [g.h.i] tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-6.json000066400000000000000000000000451413547640500261700ustar00rootroot00000000000000{"j": {"ʞ": {"l": {}}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-6.toml000066400000000000000000000000531413547640500261710ustar00rootroot00000000000000[ j . "ʞ" . 'l' ] # same as [j."ʞ".'l'] tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-7.json000066400000000000000000000000631413547640500261710ustar00rootroot00000000000000{"x": {"y": {"z": {"w": {}}}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-7.toml000066400000000000000000000001701413547640500261720ustar00rootroot00000000000000# [x] you # [x.y] don't # [x.y.z] need these [x.y.z.w] # for this to work [x] # defining a super-table afterwards is ok tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-8.json000066400000000000000000000003441413547640500261740ustar00rootroot00000000000000{"fruit": {"apple": {"color": {"type":"string","value":"red"}, "taste": {"sweet": {"type":"boolean","value":"true"}}, "texture": {"smooth": {"type":"boolean","value":"true"}}}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-8.toml000066400000000000000000000001641413547640500261760ustar00rootroot00000000000000[fruit] apple.color = "red" apple.taste.sweet = true [fruit.apple.texture] # you can add sub-tables smooth = true tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-inline-1.json000066400000000000000000000001661413547640500274430ustar00rootroot00000000000000{"name": {"first": {"type":"string","value":"Tom"}, "last": {"type":"string","value":"Preston-Werner"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-inline-1.toml000066400000000000000000000000621413547640500274400ustar00rootroot00000000000000name = { first = "Tom", last = "Preston-Werner" } tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-inline-2.json000066400000000000000000000001431413547640500274370ustar00rootroot00000000000000{"point": {"x": {"type":"integer","value":"1"}, "y": {"type":"integer","value":"2"}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-inline-2.toml000066400000000000000000000000311413547640500274350ustar00rootroot00000000000000point = { x = 1, y = 2 } tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-inline-3.json000066400000000000000000000001141413547640500274360ustar00rootroot00000000000000{"animal": {"type": {"name": {"type":"string","value":"pug"}}}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table-inline-3.toml000066400000000000000000000000401413547640500274360ustar00rootroot00000000000000animal = { type.name = "pug" } tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table.json000066400000000000000000000000201413547640500260160ustar00rootroot00000000000000{"table": {}} tomli-1.2.2/tests/data/toml-lang-compliance/valid/table/spec-table.toml000066400000000000000000000000101413547640500260170ustar00rootroot00000000000000[table] tomli-1.2.2/tests/requirements.txt000066400000000000000000000001121413547640500172710ustar00rootroot00000000000000pytest pytest-randomly pytest-cov >=2.12.1 python-dateutil coverage !=6.0 tomli-1.2.2/tests/test_error.py000066400000000000000000000021751413547640500165620ustar00rootroot00000000000000import pytest import tomli def test_line_and_col(): with pytest.raises(tomli.TOMLDecodeError) as exc_info: tomli.loads("val=.") assert str(exc_info.value) == "Invalid value (at line 1, column 5)" with pytest.raises(tomli.TOMLDecodeError) as exc_info: tomli.loads(".") assert str(exc_info.value) == "Invalid statement (at line 1, column 1)" with pytest.raises(tomli.TOMLDecodeError) as exc_info: tomli.loads("\n\nval=.") assert str(exc_info.value) == "Invalid value (at line 3, column 5)" with pytest.raises(tomli.TOMLDecodeError) as exc_info: tomli.loads("\n\n.") assert str(exc_info.value) == "Invalid statement (at line 3, column 1)" def test_missing_value(): with pytest.raises(tomli.TOMLDecodeError) as exc_info: tomli.loads("\n\nfwfw=") assert str(exc_info.value) == "Invalid value (at end of document)" def test_invalid_char_quotes(): with pytest.raises(tomli.TOMLDecodeError) as exc_info: tomli.loads("v = '\n'") assert " '\\n' " in str(exc_info.value) def test_module_name(): assert tomli.TOMLDecodeError().__module__ == "tomli" tomli-1.2.2/tests/test_extras.py000066400000000000000000000017511413547640500167360ustar00rootroot00000000000000import json from pathlib import Path import pytest import tomli from . import burntsushi DATA_DIR = Path(__file__).parent / "data" / "extras" VALID_FILES = tuple((DATA_DIR / "valid").glob("**/*.toml")) VALID_FILES_EXPECTED = tuple( json.loads(p.with_suffix(".json").read_bytes().decode()) for p in VALID_FILES ) INVALID_FILES = tuple((DATA_DIR / "invalid").glob("**/*.toml")) @pytest.mark.parametrize( "invalid", INVALID_FILES, ids=[p.stem for p in INVALID_FILES], ) def test_invalid(invalid): toml_str = invalid.read_bytes().decode() with pytest.raises(tomli.TOMLDecodeError): tomli.loads(toml_str) @pytest.mark.parametrize( "valid,expected", zip(VALID_FILES, VALID_FILES_EXPECTED), ids=[p.stem for p in VALID_FILES], ) def test_valid(valid, expected): toml_str = valid.read_bytes().decode() actual = tomli.loads(toml_str) actual = burntsushi.convert(actual) expected = burntsushi.normalize(expected) assert actual == expected tomli-1.2.2/tests/test_flags.py000066400000000000000000000010051413547640500165140ustar00rootroot00000000000000from tomli._parser import Flags def test_set_for_relative_key(): flags = Flags() head_key = ("a", "b") rel_key = ("c", "d") flags.set_for_relative_key(head_key, rel_key, Flags.EXPLICIT_NEST) assert not flags.is_(("a",), flags.EXPLICIT_NEST) assert not flags.is_(("a", "b"), flags.EXPLICIT_NEST) assert flags.is_(("a", "b", "c"), flags.EXPLICIT_NEST) assert flags.is_(("a", "b", "c", "d"), flags.EXPLICIT_NEST) assert not flags.is_(("a", "b", "c", "d", "e"), flags.EXPLICIT_NEST) tomli-1.2.2/tests/test_for_profiler.py000066400000000000000000000014341413547640500201160ustar00rootroot00000000000000"""Test for profiling. This test can be useful for profiling, as most of the execution time will be spent parsing and rendering instead of managing pytest execution environment. To get and read profiler results: - `tox -e profile` - `firefox .tox/prof/combined.svg` """ import os from pathlib import Path import tomli def test_for_profiler(): path = Path(__file__).parent.parent / "benchmark" / "data.toml" benchmark_toml = path.read_bytes().decode() # increase the count here to reduce the impact of # setting up pytest execution environment. Let's keep # the count low by default because this is part of the # standard test suite. iterations = int(os.environ.get("PROFILER_ITERATIONS", 1)) for _ in range(iterations): tomli.loads(benchmark_toml) tomli-1.2.2/tests/test_misc.py000066400000000000000000000045021413547640500163600ustar00rootroot00000000000000import copy import datetime from decimal import Decimal as D from pathlib import Path import pytest import tomli def test_load(tmp_path): content = "one=1 \n two='two' \n arr=[]" expected = {"one": 1, "two": "two", "arr": []} file_path = tmp_path / "test.toml" file_path.write_text(content) # Test text mode with open(file_path, encoding="utf-8", newline="") as f: with pytest.warns(DeprecationWarning): actual = tomli.load(f) # type: ignore[arg-type] assert actual == expected # Test binary mode with open(file_path, "rb") as bin_f: actual = tomli.load(bin_f) assert actual == expected def test_parse_float(): doc = """ val=0.1 biggest1=inf biggest2=+inf smallest=-inf notnum1=nan notnum2=-nan notnum3=+nan """ obj = tomli.loads(doc, parse_float=D) expected = { "val": D("0.1"), "biggest1": D("inf"), "biggest2": D("inf"), "smallest": D("-inf"), "notnum1": D("nan"), "notnum2": D("-nan"), "notnum3": D("nan"), } for k, expected_val in expected.items(): actual_val = obj[k] assert isinstance(actual_val, D) if actual_val.is_nan(): assert expected_val.is_nan() else: assert actual_val == expected_val def test_deepcopy(): doc = """ [bliibaa.diibaa] offsettime=[1979-05-27T00:32:00.999999-07:00] """ obj = tomli.loads(doc) obj_copy = copy.deepcopy(obj) assert obj_copy == obj expected_obj = { "bliibaa": { "diibaa": { "offsettime": [ datetime.datetime( 1979, 5, 27, 0, 32, 0, 999999, tzinfo=datetime.timezone(datetime.timedelta(hours=-7)), ) ] } } } assert obj_copy == expected_obj def test_own_pyproject(): pyproject_path = Path(__file__).parent.parent / "pyproject.toml" with open(pyproject_path, "rb") as f: pyproject = tomli.load(f) assert pyproject["project"]["version"] == tomli.__version__ tomli-1.2.2/tests/test_toml_compliance.py000066400000000000000000000027721413547640500206010ustar00rootroot00000000000000import json from pathlib import Path import pytest import tomli from . import burntsushi class MissingFile: def __init__(self, path: Path): self.path = path DATA_DIR = Path(__file__).parent / "data" / "toml-lang-compliance" VALID_FILES = tuple((DATA_DIR / "valid").glob("**/*.toml")) # VALID_FILES_EXPECTED = tuple( # json.loads(p.with_suffix(".json").read_bytes().decode()) for p in VALID_FILES # ) _expected_files = [] for p in VALID_FILES: json_path = p.with_suffix(".json") try: text = json.loads(json_path.read_bytes().decode()) except FileNotFoundError: text = MissingFile(json_path) _expected_files.append(text) VALID_FILES_EXPECTED = tuple(_expected_files) INVALID_FILES = tuple((DATA_DIR / "invalid").glob("**/*.toml")) @pytest.mark.parametrize( "invalid", INVALID_FILES, ids=[p.stem for p in INVALID_FILES], ) def test_invalid(invalid): toml_str = invalid.read_bytes().decode() with pytest.raises(tomli.TOMLDecodeError): tomli.loads(toml_str) @pytest.mark.parametrize( "valid,expected", zip(VALID_FILES, VALID_FILES_EXPECTED), ids=[p.stem for p in VALID_FILES], ) def test_valid(valid, expected): if isinstance(expected, MissingFile): pytest.xfail(f"Missing a .json file corresponding the .toml: {expected.path}") toml_str = valid.read_bytes().decode() actual = tomli.loads(toml_str) actual = burntsushi.convert(actual) expected = burntsushi.normalize(expected) assert actual == expected tomli-1.2.2/tomli/000077500000000000000000000000001413547640500137755ustar00rootroot00000000000000tomli-1.2.2/tomli/__init__.py000066400000000000000000000004531413547640500161100ustar00rootroot00000000000000"""A lil' TOML parser.""" __all__ = ("loads", "load", "TOMLDecodeError") __version__ = "1.2.2" # DO NOT EDIT THIS LINE MANUALLY. LET bump2version UTILITY DO IT from tomli._parser import TOMLDecodeError, load, loads # Pretend this exception was created here. TOMLDecodeError.__module__ = "tomli" tomli-1.2.2/tomli/_parser.py000066400000000000000000000522331413547640500160070ustar00rootroot00000000000000import string from types import MappingProxyType from typing import Any, BinaryIO, Dict, FrozenSet, Iterable, NamedTuple, Optional, Tuple import warnings from tomli._re import ( RE_DATETIME, RE_LOCALTIME, RE_NUMBER, match_to_datetime, match_to_localtime, match_to_number, ) from tomli._types import Key, ParseFloat, Pos ASCII_CTRL = frozenset(chr(i) for i in range(32)) | frozenset(chr(127)) # Neither of these sets include quotation mark or backslash. They are # currently handled as separate cases in the parser functions. ILLEGAL_BASIC_STR_CHARS = ASCII_CTRL - frozenset("\t") ILLEGAL_MULTILINE_BASIC_STR_CHARS = ASCII_CTRL - frozenset("\t\n") ILLEGAL_LITERAL_STR_CHARS = ILLEGAL_BASIC_STR_CHARS ILLEGAL_MULTILINE_LITERAL_STR_CHARS = ILLEGAL_MULTILINE_BASIC_STR_CHARS ILLEGAL_COMMENT_CHARS = ILLEGAL_BASIC_STR_CHARS TOML_WS = frozenset(" \t") TOML_WS_AND_NEWLINE = TOML_WS | frozenset("\n") BARE_KEY_CHARS = frozenset(string.ascii_letters + string.digits + "-_") KEY_INITIAL_CHARS = BARE_KEY_CHARS | frozenset("\"'") HEXDIGIT_CHARS = frozenset(string.hexdigits) BASIC_STR_ESCAPE_REPLACEMENTS = MappingProxyType( { "\\b": "\u0008", # backspace "\\t": "\u0009", # tab "\\n": "\u000A", # linefeed "\\f": "\u000C", # form feed "\\r": "\u000D", # carriage return '\\"': "\u0022", # quote "\\\\": "\u005C", # backslash } ) class TOMLDecodeError(ValueError): """An error raised if a document is not valid TOML.""" def load(fp: BinaryIO, *, parse_float: ParseFloat = float) -> Dict[str, Any]: """Parse TOML from a binary file object.""" s_bytes = fp.read() try: s = s_bytes.decode() except AttributeError: warnings.warn( "Text file object support is deprecated in favor of binary file objects." ' Use `open("foo.toml", "rb")` to open the file in binary mode.', DeprecationWarning, stacklevel=2, ) s = s_bytes # type: ignore[assignment] return loads(s, parse_float=parse_float) def loads(s: str, *, parse_float: ParseFloat = float) -> Dict[str, Any]: # noqa: C901 """Parse TOML from a string.""" # The spec allows converting "\r\n" to "\n", even in string # literals. Let's do so to simplify parsing. src = s.replace("\r\n", "\n") pos = 0 out = Output(NestedDict(), Flags()) header: Key = () # Parse one statement at a time # (typically means one line in TOML source) while True: # 1. Skip line leading whitespace pos = skip_chars(src, pos, TOML_WS) # 2. Parse rules. Expect one of the following: # - end of file # - end of line # - comment # - key/value pair # - append dict to list (and move to its namespace) # - create dict (and move to its namespace) # Skip trailing whitespace when applicable. try: char = src[pos] except IndexError: break if char == "\n": pos += 1 continue if char in KEY_INITIAL_CHARS: pos = key_value_rule(src, pos, out, header, parse_float) pos = skip_chars(src, pos, TOML_WS) elif char == "[": try: second_char: Optional[str] = src[pos + 1] except IndexError: second_char = None if second_char == "[": pos, header = create_list_rule(src, pos, out) else: pos, header = create_dict_rule(src, pos, out) pos = skip_chars(src, pos, TOML_WS) elif char != "#": raise suffixed_err(src, pos, "Invalid statement") # 3. Skip comment pos = skip_comment(src, pos) # 4. Expect end of line or end of file try: char = src[pos] except IndexError: break if char != "\n": raise suffixed_err( src, pos, "Expected newline or end of document after a statement" ) pos += 1 return out.data.dict class Flags: """Flags that map to parsed keys/namespaces.""" # Marks an immutable namespace (inline array or inline table). FROZEN = 0 # Marks a nest that has been explicitly created and can no longer # be opened using the "[table]" syntax. EXPLICIT_NEST = 1 def __init__(self) -> None: self._flags: Dict[str, dict] = {} def unset_all(self, key: Key) -> None: cont = self._flags for k in key[:-1]: if k not in cont: return cont = cont[k]["nested"] cont.pop(key[-1], None) def set_for_relative_key(self, head_key: Key, rel_key: Key, flag: int) -> None: cont = self._flags for k in head_key: if k not in cont: cont[k] = {"flags": set(), "recursive_flags": set(), "nested": {}} cont = cont[k]["nested"] for k in rel_key: if k in cont: cont[k]["flags"].add(flag) else: cont[k] = {"flags": {flag}, "recursive_flags": set(), "nested": {}} cont = cont[k]["nested"] def set(self, key: Key, flag: int, *, recursive: bool) -> None: # noqa: A003 cont = self._flags key_parent, key_stem = key[:-1], key[-1] for k in key_parent: if k not in cont: cont[k] = {"flags": set(), "recursive_flags": set(), "nested": {}} cont = cont[k]["nested"] if key_stem not in cont: cont[key_stem] = {"flags": set(), "recursive_flags": set(), "nested": {}} cont[key_stem]["recursive_flags" if recursive else "flags"].add(flag) def is_(self, key: Key, flag: int) -> bool: if not key: return False # document root has no flags cont = self._flags for k in key[:-1]: if k not in cont: return False inner_cont = cont[k] if flag in inner_cont["recursive_flags"]: return True cont = inner_cont["nested"] key_stem = key[-1] if key_stem in cont: cont = cont[key_stem] return flag in cont["flags"] or flag in cont["recursive_flags"] return False class NestedDict: def __init__(self) -> None: # The parsed content of the TOML document self.dict: Dict[str, Any] = {} def get_or_create_nest( self, key: Key, *, access_lists: bool = True, ) -> dict: cont: Any = self.dict for k in key: if k not in cont: cont[k] = {} cont = cont[k] if access_lists and isinstance(cont, list): cont = cont[-1] if not isinstance(cont, dict): raise KeyError("There is no nest behind this key") return cont def append_nest_to_list(self, key: Key) -> None: cont = self.get_or_create_nest(key[:-1]) last_key = key[-1] if last_key in cont: list_ = cont[last_key] try: list_.append({}) except AttributeError: raise KeyError("An object other than list found behind this key") else: cont[last_key] = [{}] class Output(NamedTuple): data: NestedDict flags: Flags def skip_chars(src: str, pos: Pos, chars: Iterable[str]) -> Pos: try: while src[pos] in chars: pos += 1 except IndexError: pass return pos def skip_until( src: str, pos: Pos, expect: str, *, error_on: FrozenSet[str], error_on_eof: bool, ) -> Pos: try: new_pos = src.index(expect, pos) except ValueError: new_pos = len(src) if error_on_eof: raise suffixed_err(src, new_pos, f"Expected {expect!r}") from None if not error_on.isdisjoint(src[pos:new_pos]): while src[pos] not in error_on: pos += 1 raise suffixed_err(src, pos, f"Found invalid character {src[pos]!r}") return new_pos def skip_comment(src: str, pos: Pos) -> Pos: try: char: Optional[str] = src[pos] except IndexError: char = None if char == "#": return skip_until( src, pos + 1, "\n", error_on=ILLEGAL_COMMENT_CHARS, error_on_eof=False ) return pos def skip_comments_and_array_ws(src: str, pos: Pos) -> Pos: while True: pos_before_skip = pos pos = skip_chars(src, pos, TOML_WS_AND_NEWLINE) pos = skip_comment(src, pos) if pos == pos_before_skip: return pos def create_dict_rule(src: str, pos: Pos, out: Output) -> Tuple[Pos, Key]: pos += 1 # Skip "[" pos = skip_chars(src, pos, TOML_WS) pos, key = parse_key(src, pos) if out.flags.is_(key, Flags.EXPLICIT_NEST) or out.flags.is_(key, Flags.FROZEN): raise suffixed_err(src, pos, f"Can not declare {key} twice") out.flags.set(key, Flags.EXPLICIT_NEST, recursive=False) try: out.data.get_or_create_nest(key) except KeyError: raise suffixed_err(src, pos, "Can not overwrite a value") from None if not src.startswith("]", pos): raise suffixed_err(src, pos, 'Expected "]" at the end of a table declaration') return pos + 1, key def create_list_rule(src: str, pos: Pos, out: Output) -> Tuple[Pos, Key]: pos += 2 # Skip "[[" pos = skip_chars(src, pos, TOML_WS) pos, key = parse_key(src, pos) if out.flags.is_(key, Flags.FROZEN): raise suffixed_err(src, pos, f"Can not mutate immutable namespace {key}") # Free the namespace now that it points to another empty list item... out.flags.unset_all(key) # ...but this key precisely is still prohibited from table declaration out.flags.set(key, Flags.EXPLICIT_NEST, recursive=False) try: out.data.append_nest_to_list(key) except KeyError: raise suffixed_err(src, pos, "Can not overwrite a value") from None if not src.startswith("]]", pos): raise suffixed_err(src, pos, 'Expected "]]" at the end of an array declaration') return pos + 2, key def key_value_rule( src: str, pos: Pos, out: Output, header: Key, parse_float: ParseFloat ) -> Pos: pos, key, value = parse_key_value_pair(src, pos, parse_float) key_parent, key_stem = key[:-1], key[-1] abs_key_parent = header + key_parent if out.flags.is_(abs_key_parent, Flags.FROZEN): raise suffixed_err( src, pos, f"Can not mutate immutable namespace {abs_key_parent}" ) # Containers in the relative path can't be opened with the table syntax after this out.flags.set_for_relative_key(header, key, Flags.EXPLICIT_NEST) try: nest = out.data.get_or_create_nest(abs_key_parent) except KeyError: raise suffixed_err(src, pos, "Can not overwrite a value") from None if key_stem in nest: raise suffixed_err(src, pos, "Can not overwrite a value") # Mark inline table and array namespaces recursively immutable if isinstance(value, (dict, list)): out.flags.set(header + key, Flags.FROZEN, recursive=True) nest[key_stem] = value return pos def parse_key_value_pair( src: str, pos: Pos, parse_float: ParseFloat ) -> Tuple[Pos, Key, Any]: pos, key = parse_key(src, pos) try: char: Optional[str] = src[pos] except IndexError: char = None if char != "=": raise suffixed_err(src, pos, 'Expected "=" after a key in a key/value pair') pos += 1 pos = skip_chars(src, pos, TOML_WS) pos, value = parse_value(src, pos, parse_float) return pos, key, value def parse_key(src: str, pos: Pos) -> Tuple[Pos, Key]: pos, key_part = parse_key_part(src, pos) key: Key = (key_part,) pos = skip_chars(src, pos, TOML_WS) while True: try: char: Optional[str] = src[pos] except IndexError: char = None if char != ".": return pos, key pos += 1 pos = skip_chars(src, pos, TOML_WS) pos, key_part = parse_key_part(src, pos) key += (key_part,) pos = skip_chars(src, pos, TOML_WS) def parse_key_part(src: str, pos: Pos) -> Tuple[Pos, str]: try: char: Optional[str] = src[pos] except IndexError: char = None if char in BARE_KEY_CHARS: start_pos = pos pos = skip_chars(src, pos, BARE_KEY_CHARS) return pos, src[start_pos:pos] if char == "'": return parse_literal_str(src, pos) if char == '"': return parse_one_line_basic_str(src, pos) raise suffixed_err(src, pos, "Invalid initial character for a key part") def parse_one_line_basic_str(src: str, pos: Pos) -> Tuple[Pos, str]: pos += 1 return parse_basic_str(src, pos, multiline=False) def parse_array(src: str, pos: Pos, parse_float: ParseFloat) -> Tuple[Pos, list]: pos += 1 array: list = [] pos = skip_comments_and_array_ws(src, pos) if src.startswith("]", pos): return pos + 1, array while True: pos, val = parse_value(src, pos, parse_float) array.append(val) pos = skip_comments_and_array_ws(src, pos) c = src[pos : pos + 1] if c == "]": return pos + 1, array if c != ",": raise suffixed_err(src, pos, "Unclosed array") pos += 1 pos = skip_comments_and_array_ws(src, pos) if src.startswith("]", pos): return pos + 1, array def parse_inline_table(src: str, pos: Pos, parse_float: ParseFloat) -> Tuple[Pos, dict]: pos += 1 nested_dict = NestedDict() flags = Flags() pos = skip_chars(src, pos, TOML_WS) if src.startswith("}", pos): return pos + 1, nested_dict.dict while True: pos, key, value = parse_key_value_pair(src, pos, parse_float) key_parent, key_stem = key[:-1], key[-1] if flags.is_(key, Flags.FROZEN): raise suffixed_err(src, pos, f"Can not mutate immutable namespace {key}") try: nest = nested_dict.get_or_create_nest(key_parent, access_lists=False) except KeyError: raise suffixed_err(src, pos, "Can not overwrite a value") from None if key_stem in nest: raise suffixed_err(src, pos, f"Duplicate inline table key {key_stem!r}") nest[key_stem] = value pos = skip_chars(src, pos, TOML_WS) c = src[pos : pos + 1] if c == "}": return pos + 1, nested_dict.dict if c != ",": raise suffixed_err(src, pos, "Unclosed inline table") if isinstance(value, (dict, list)): flags.set(key, Flags.FROZEN, recursive=True) pos += 1 pos = skip_chars(src, pos, TOML_WS) def parse_basic_str_escape( # noqa: C901 src: str, pos: Pos, *, multiline: bool = False ) -> Tuple[Pos, str]: escape_id = src[pos : pos + 2] pos += 2 if multiline and escape_id in {"\\ ", "\\\t", "\\\n"}: # Skip whitespace until next non-whitespace character or end of # the doc. Error if non-whitespace is found before newline. if escape_id != "\\\n": pos = skip_chars(src, pos, TOML_WS) try: char = src[pos] except IndexError: return pos, "" if char != "\n": raise suffixed_err(src, pos, 'Unescaped "\\" in a string') pos += 1 pos = skip_chars(src, pos, TOML_WS_AND_NEWLINE) return pos, "" if escape_id == "\\u": return parse_hex_char(src, pos, 4) if escape_id == "\\U": return parse_hex_char(src, pos, 8) try: return pos, BASIC_STR_ESCAPE_REPLACEMENTS[escape_id] except KeyError: if len(escape_id) != 2: raise suffixed_err(src, pos, "Unterminated string") from None raise suffixed_err(src, pos, 'Unescaped "\\" in a string') from None def parse_basic_str_escape_multiline(src: str, pos: Pos) -> Tuple[Pos, str]: return parse_basic_str_escape(src, pos, multiline=True) def parse_hex_char(src: str, pos: Pos, hex_len: int) -> Tuple[Pos, str]: hex_str = src[pos : pos + hex_len] if len(hex_str) != hex_len or not HEXDIGIT_CHARS.issuperset(hex_str): raise suffixed_err(src, pos, "Invalid hex value") pos += hex_len hex_int = int(hex_str, 16) if not is_unicode_scalar_value(hex_int): raise suffixed_err(src, pos, "Escaped character is not a Unicode scalar value") return pos, chr(hex_int) def parse_literal_str(src: str, pos: Pos) -> Tuple[Pos, str]: pos += 1 # Skip starting apostrophe start_pos = pos pos = skip_until( src, pos, "'", error_on=ILLEGAL_LITERAL_STR_CHARS, error_on_eof=True ) return pos + 1, src[start_pos:pos] # Skip ending apostrophe def parse_multiline_str(src: str, pos: Pos, *, literal: bool) -> Tuple[Pos, str]: pos += 3 if src.startswith("\n", pos): pos += 1 if literal: delim = "'" end_pos = skip_until( src, pos, "'''", error_on=ILLEGAL_MULTILINE_LITERAL_STR_CHARS, error_on_eof=True, ) result = src[pos:end_pos] pos = end_pos + 3 else: delim = '"' pos, result = parse_basic_str(src, pos, multiline=True) # Add at maximum two extra apostrophes/quotes if the end sequence # is 4 or 5 chars long instead of just 3. if not src.startswith(delim, pos): return pos, result pos += 1 if not src.startswith(delim, pos): return pos, result + delim pos += 1 return pos, result + (delim * 2) def parse_basic_str(src: str, pos: Pos, *, multiline: bool) -> Tuple[Pos, str]: if multiline: error_on = ILLEGAL_MULTILINE_BASIC_STR_CHARS parse_escapes = parse_basic_str_escape_multiline else: error_on = ILLEGAL_BASIC_STR_CHARS parse_escapes = parse_basic_str_escape result = "" start_pos = pos while True: try: char = src[pos] except IndexError: raise suffixed_err(src, pos, "Unterminated string") from None if char == '"': if not multiline: return pos + 1, result + src[start_pos:pos] if src.startswith('"""', pos): return pos + 3, result + src[start_pos:pos] pos += 1 continue if char == "\\": result += src[start_pos:pos] pos, parsed_escape = parse_escapes(src, pos) result += parsed_escape start_pos = pos continue if char in error_on: raise suffixed_err(src, pos, f"Illegal character {char!r}") pos += 1 def parse_value( # noqa: C901 src: str, pos: Pos, parse_float: ParseFloat ) -> Tuple[Pos, Any]: try: char: Optional[str] = src[pos] except IndexError: char = None # Basic strings if char == '"': if src.startswith('"""', pos): return parse_multiline_str(src, pos, literal=False) return parse_one_line_basic_str(src, pos) # Literal strings if char == "'": if src.startswith("'''", pos): return parse_multiline_str(src, pos, literal=True) return parse_literal_str(src, pos) # Booleans if char == "t": if src.startswith("true", pos): return pos + 4, True if char == "f": if src.startswith("false", pos): return pos + 5, False # Dates and times datetime_match = RE_DATETIME.match(src, pos) if datetime_match: try: datetime_obj = match_to_datetime(datetime_match) except ValueError as e: raise suffixed_err(src, pos, "Invalid date or datetime") from e return datetime_match.end(), datetime_obj localtime_match = RE_LOCALTIME.match(src, pos) if localtime_match: return localtime_match.end(), match_to_localtime(localtime_match) # Integers and "normal" floats. # The regex will greedily match any type starting with a decimal # char, so needs to be located after handling of dates and times. number_match = RE_NUMBER.match(src, pos) if number_match: return number_match.end(), match_to_number(number_match, parse_float) # Arrays if char == "[": return parse_array(src, pos, parse_float) # Inline tables if char == "{": return parse_inline_table(src, pos, parse_float) # Special floats first_three = src[pos : pos + 3] if first_three in {"inf", "nan"}: return pos + 3, parse_float(first_three) first_four = src[pos : pos + 4] if first_four in {"-inf", "+inf", "-nan", "+nan"}: return pos + 4, parse_float(first_four) raise suffixed_err(src, pos, "Invalid value") def suffixed_err(src: str, pos: Pos, msg: str) -> TOMLDecodeError: """Return a `TOMLDecodeError` where error message is suffixed with coordinates in source.""" def coord_repr(src: str, pos: Pos) -> str: if pos >= len(src): return "end of document" line = src.count("\n", 0, pos) + 1 if line == 1: column = pos + 1 else: column = pos - src.rindex("\n", 0, pos) return f"line {line}, column {column}" return TOMLDecodeError(f"{msg} (at {coord_repr(src, pos)})") def is_unicode_scalar_value(codepoint: int) -> bool: return (0 <= codepoint <= 55295) or (57344 <= codepoint <= 1114111) tomli-1.2.2/tomli/_re.py000066400000000000000000000054011413547640500151140ustar00rootroot00000000000000from datetime import date, datetime, time, timedelta, timezone, tzinfo from functools import lru_cache import re from typing import Any, Optional, Union from tomli._types import ParseFloat # E.g. # - 00:32:00.999999 # - 00:32:00 _TIME_RE_STR = r"([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])(?:\.([0-9]{1,6})[0-9]*)?" RE_NUMBER = re.compile( r""" 0 (?: x[0-9A-Fa-f](?:_?[0-9A-Fa-f])* # hex | b[01](?:_?[01])* # bin | o[0-7](?:_?[0-7])* # oct ) | [+-]?(?:0|[1-9](?:_?[0-9])*) # dec, integer part (?P (?:\.[0-9](?:_?[0-9])*)? # optional fractional part (?:[eE][+-]?[0-9](?:_?[0-9])*)? # optional exponent part ) """, flags=re.VERBOSE, ) RE_LOCALTIME = re.compile(_TIME_RE_STR) RE_DATETIME = re.compile( fr""" ([0-9]{{4}})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01]) # date, e.g. 1988-10-27 (?: [T ] {_TIME_RE_STR} (?:(Z)|([+-])([01][0-9]|2[0-3]):([0-5][0-9]))? # optional time offset )? """, flags=re.VERBOSE, ) def match_to_datetime(match: "re.Match") -> Union[datetime, date]: """Convert a `RE_DATETIME` match to `datetime.datetime` or `datetime.date`. Raises ValueError if the match does not correspond to a valid date or datetime. """ ( year_str, month_str, day_str, hour_str, minute_str, sec_str, micros_str, zulu_time, offset_sign_str, offset_hour_str, offset_minute_str, ) = match.groups() year, month, day = int(year_str), int(month_str), int(day_str) if hour_str is None: return date(year, month, day) hour, minute, sec = int(hour_str), int(minute_str), int(sec_str) micros = int(micros_str.ljust(6, "0")) if micros_str else 0 if offset_sign_str: tz: Optional[tzinfo] = cached_tz( offset_hour_str, offset_minute_str, offset_sign_str ) elif zulu_time: tz = timezone.utc else: # local date-time tz = None return datetime(year, month, day, hour, minute, sec, micros, tzinfo=tz) @lru_cache(maxsize=None) def cached_tz(hour_str: str, minute_str: str, sign_str: str) -> timezone: sign = 1 if sign_str == "+" else -1 return timezone( timedelta( hours=sign * int(hour_str), minutes=sign * int(minute_str), ) ) def match_to_localtime(match: "re.Match") -> time: hour_str, minute_str, sec_str, micros_str = match.groups() micros = int(micros_str.ljust(6, "0")) if micros_str else 0 return time(int(hour_str), int(minute_str), int(sec_str), micros) def match_to_number(match: "re.Match", parse_float: "ParseFloat") -> Any: if match.group("floatpart"): return parse_float(match.group()) return int(match.group(), 0) tomli-1.2.2/tomli/_types.py000066400000000000000000000001761413547640500156560ustar00rootroot00000000000000from typing import Any, Callable, Tuple # Type annotations ParseFloat = Callable[[str], Any] Key = Tuple[str, ...] Pos = int tomli-1.2.2/tomli/py.typed000066400000000000000000000000321413547640500154670ustar00rootroot00000000000000# Marker file for PEP 561